最简单的动态添加数据到ListView Demo
来源:互联网 发布:光子嫩肤 效果 知乎 编辑:程序博客网 时间:2024/05/16 09:29
package com.paad.todolist;import java.util.ArrayList;import android.app.Activity;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.widget.ArrayAdapter;import android.widget.EditText;import android.widget.ListView;public class test extends Activity{EditText et;ListView lv;ArrayList<String> al;ArrayAdapter <String>aa;public boolean onCreateOptionsMenu(Menu menu){menu.add(0, 1, 1, "Add");return true;}protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);setContentView(R.layout.main);et = (EditText)findViewById(R.id.myEditText);lv = (ListView)findViewById(R.id.myListView); al = new ArrayList<String>();aa = new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, al);lv.setAdapter(aa); } public boolean onOptionsItemSelected(MenuItem menu){ if(menu.getItemId() == 1){ al.add(0,et.getText().toString()); aa.notifyDataSetChanged();/*可以在修改适配器绑定的数组后,不用重新刷新Activity,通知Activity更新ListView。 如果不加,当新添加一行数据后,将不会立即显示,直到下一次触发后.*/ et.setText("");}return true;} }<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <EditText android:id="@+id/myEditText" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="@string/addItemHint" android:contentDescription="@string/addItemContentDescription" /> <ListView android:id="@+id/myListView" android:layout_width="match_parent" android:layout_height="wrap_content" /></LinearLayout>