重写BaseAdapter的getView方法出现问题
- Java code
public int getCount() { // TODO Auto-generated method stub return 5; }getCount()返回的是5
但是 public View getView(int position, View convertView, ViewGroup parent)
输出position的值的话,
被调用了6次,但是不是0-5,而是0,1,2,3,4,0
最后一个0是怎么个情况啊?
[解决办法]
调用测试会多次的,每次数据更新都会对此调用,你只要position对应对了就好,没必要担心
[解决办法]
[解决办法]
是listview屏蔽了button的click事件吧
[解决办法]
getItemId,这个你有没有重载?看看你自己写的返回数值是什么
[解决办法]
itemPosition = position;//这个是在不停的变化的。
remove.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("ButtonClick");
itemList.remove(itemPosition);//这边你删除的是最后一次调用getView的item,所以会有问题
ProductAdapter.this.notifyDataSetChanged();
}
});
return itemView;
[解决办法]
解决方法,一个比较简单的方法是,设置button的tag,把当前的position设置上,然后在onclick中,取出这tag,就可以删除数据了。不然,你是没有办法去传递参数的。这个方法,包治百病,嘿嘿