在item中含有删除按钮,点击删除后删除这一行,并刷新列表重新显示
当时想不出删除后要怎么才能notifyDataSetChanged……
后来发现就在adapter里直接刷新数据就好。
我实在是太菜了。
在生成数据的时候也遇到问题,像这样
List<Person> persons = new ArrayList<Person>();
Person person = new Person();
for (int i = 0; i < 10; i++) {
person.setName("哇哈哈"+i);
persons.add(person);
}
把new写在了循环的外面,这样就只有一个对象,在最后一个循环时把i改为了9,结果就是生成的列表是10个“哇哈哈9”……正确的写法应该是把new放到循环里,像这样
List<Person> persons = new ArrayList<Person>();
for (int i = 0; i < 10; i++) {
Person person = new Person();
person.setName("哇哈哈"+i);
persons.add(person);
}
在adapter里删除的逻辑是这样式儿的
viewholder.delBt.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
persons.remove(position);
notifyDataSetChanged();
}
});
再把代码打包上传一份
得了齐活