安卓外部控制ListView内部的一个删除按钮的显示与隐藏该怎么做

比如说在标题栏有一个编辑按钮,当点击编辑时listView所有Item内部的删除Button显示,编辑变成完成,点击完成时所有的删除按钮隐藏。

我做出来的效果只能是listview中的第一行删除button显示与隐藏,其它行并没有出现button,我觉得是不是得在getview中对list view做点啥?请高手帮帮忙~先谢谢了。

5个回答

之前遇到过类似的需求,做法仅供参考。
listView的Adapter中添加一个设置edit mode的接口,设置edit mode后notifyDataSetChanged,在getview中判断如果是edit mode就显示删除button,否则就不显示。

u014693358
zhumulang 回复snail_dd: 兄弟能否说的再明白一点?初学者实在不好意思,设置edit mode的接口怎么设置呢?edit mode是啥?
4 年多之前 回复

问题已经解决,跟大家说下吧还是,listview每次加载一个item子项时都会调用一次adapter中的getview方法。我们要做的就是设置一个全局boolean类型的标志用来判断编辑按钮的 button是否被点击了。如果点击了,设置标志为true显示删除按钮,没点击设置为false不显示。然后在getview中对这个标志进行判断,对删除按钮做相应的操作。最后我把删除按钮的监听事件也写在了getview方法中。还有别忘了在编辑按钮的监听事件中对listview进行刷新,只有进行刷新才会调用getview方法,删除按钮才会正常显现。这是我的解决方法,希望对各位有帮助。

这个要考虑性能问题的话,还真不太好处理,你在adapter里面进行控制呢

u014693358
zhumulang 回复Mr_dsw: 现在只要先把需求完成了就好~
4 年多之前 回复

public class MyAdapter extends BaseAdapter
{
//
...

private boolean delete_mode = false;

public void setDeleteMode(boolean del)
{
delete_mode = del;
}
public boolean getDeleteMode()
{
return delete_mode;
}

//
...

}

u014693358
zhumulang 回复snail_dd: 嗯呢~问题已经解决~其实不是很复杂我之前想错了~谢谢你啦~
4 年多之前 回复

弄了一天这个一直没弄好,看了你的思路发现是差不多的,然后找才知道是convertView导致的,感谢感谢

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐