- I'm VC 首页
- Visual C++
- C++
- C语言
- Visual C#
- DotNet
- VB.Net
- Java
- Android
- Visual Basic
- Delphi
- 汇编
- F#
- 软件架构
- 数据结构/算法
- 软件工程
- Web开发
- |ASP.Net
- |PHP
- |JSP
- |ASP
- |JavaScript
- |AJAX
- |Silverlight
- |Flex
- |JQuery
- |prototype
- |MooTools
- |ExtJS
- |dojo
- 数据库
- |Oracle
- |MSSQL
- |MySQL
- |DB2
- |Sybase
- |PowerBuilder
- |Access
- |其他数据库
- |存储技术
- |数据库基础/原理
ID #59438
动态添加lsitView
这个很简单 就是为了说明别忘了adapter.notifyDataSetChanged();
唤醒一下,其实这个唤醒也就是在buutton下用 或者在别的控件下调用 如果是在getView下就不必了
- ublic class DynamicListItems extends ListActivity {
- private static final String ITEM_KEY = "key";
- ArrayList<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();
- private SimpleAdapter adapter;
- private EditText newValue;
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.dynamic_list);
- newValue = (EditText) findViewById(R.id.new_value_field);
- setListAdapter(new SimpleAdapter(this, list, R.layout.row, new String[] { ITEM_KEY }, new int[] { R.id.list_value }));
- ((ImageButton) findViewById(R.id.button)).setOnClickListener(getBtnClickListener());
- }
- private OnClickListener getBtnClickListener() {
- return new OnClickListener() {
- public void onClick(View view) {
- try {
- HashMap<String, String> item = new HashMap<String, String>();
- item.put(ITEM_KEY, newValue.getText().toString());
- list.add(item);
- adapter.notifyDataSetChanged();
- } catch (NullPointerException e) {
- Log.i("[Dynamic Items]", "Tried to add null value");
- }
- }
- };
- }
- }
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:Android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- <ListView android:id="@+id/android:list"
- android:layout_width="fill_parent"
- android:layout_height="0px"
- android:layout_weight="1"
- android:cacheColorHint="#00000000">
- </ListView>
- <LinearLayout
- android:orientation="horizontal"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginTop="6px"
- android:layout_marginBottom="8px"
- android:layout_marginLeft="8px"
- android:layout_marginRight="8px"
- android:background="#00000000">
- <ImageButton
- android:id="@+id/button"
- android:layout_width="100px"
- android:layout_height= "100px"
- android:src="@android:drawable/ic_menu_add" />
- </LinearLayout>
- <LinearLayout
- android:orientation="vertical"
- android:layout_width="230px"
- android:layout_height="wrap_content"
- android:layout_marginTop="8px"
- android:layout_marginBottom="8px"
- android:layout_marginLeft="0px"
- android:layout_marginRight="28px"
- android:background="#cccccc00" >
- <EditText android:id="@+id/new_value_field"
- android:textColor="#020905"
- android:textSize="18sp"
- android:layout_marginTop="6px"
- android:layout_marginBottom="8px"
- android:layout_marginLeft="12px"
- android:layout_marginRight="12px"
- android:layout_width="210px"
- android:layout_height="wrap_content"
- android:layout_weight="1"/>
- </LinearLayout>
- </LinearLayout>
row
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android= "http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:background="#00000000">
- <TextView
- android:id="@+id/list_value"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- />
- </LinearLayout>