android listview 如何点击item改变背景色(不是手指按下的一瞬间)

listview想要实现点击item就改变item的背景色,点击另一个item的时候消除上一个item的背景色,保证同一时间有且只有一个item有背景色,这个效果我实现的... listview想要实现点击item就改变item的背景色,点击另一个item的时候消除上一个item的背景色,保证同一时间有且只有一个item有背景色,这个效果我实现的时候一直存在复用性问题,屏幕一滚就乱跳了,用点击的位置来判断貌似可以解决问题,但是又用什么方法来消除上一个点击的item的背景色呢,用listview.getChildAt()方法可能会导致空指针异常,原因貌似是屏幕外的item,listview无法得到,但有时候点击屏幕内的item也会报空指针,求大神指教,最好有demo或者代码,感激不尽 ! 展开
 我来答
陈键欢
2015-03-30 · 超过25用户采纳过TA的回答
知道答主
回答量:68
采纳率:0%
帮助的人:47.1万
展开全部
你应该用一个变量保存用户点击的item 下标,获取用户当前点击的位置改变颜色,上一个位置恢复背景颜色。在click事件里面改变背景色,记得要刷新界面。应该不会出现你说的那种情况,空指针你应该再检查一下代码,是不是哪里没有实例化。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式