我用ListView
来动态添加项目,但是有一个关于不是Smooth添加的问题。 有TextView的和按钮,在我的listActivity,Iwant按下按钮,然后TextView
的文本可以自动添加到ListView
,但我按下按钮,它DONOT工作,除非以后我进入内容,按‘OK’键,再按下按钮,TextView's
文字可以自动添加到ListView
。我不知道为什么。如果我连续按下的按钮,为3次,然后按“确定”键,内容listView动态添加项目
自动添加列表
的看法,但3次。
public 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");
}
}
};
}}
如何动态删除项目?
- dynamic_list.xml只包含ListView控件,按钮,TextView的
- row.xml包含
TextView
什么是'R.layout.simle_list_item_1'? – 2012-11-08 16:23:37
@AlanDeep这不是R.layout.simle_list_item_1,它的android.R.layout.simple_list_item_1,这个语句定义了列表的行布局,这里的simple_list_item_1是在android sdk中定义的布局的xml文件。 – 2012-11-09 10:30:59
hw它可以在Base Adapter的情况下工作...任何想法? – CoDe 2013-08-28 14:13:25