在listview中滚动时取消选择视图选择

时间:2011-08-12 08:46:36

标签: android listview

我想更改列表视图中所选项目的背景颜色。

当我点击列表项时,我会在

中获得视图
 onItemClick(AdapterView<?> arg0, View view, int position, long arg3) 

然后像这样改变了该视图的背景

view.setBackgroundColor(Color.BLUE);
当我点击它时它的工作正常。背景发生了变化。但我有一个问题,即

例如我在listview中有10个项目,最初只有5个项目可见(因为屏幕分辨率)如果我滚动我可以看到接下来的5个项目。

首先,如果我要选择1,3项,那么背景颜色正在改变,那么我正在滚动到下一个五,如果我再次回来我看不到1,3被点击(他们的背景颜色是改为原色)。

请告诉我如何解决这个问题。

最好的问候

提前致谢。

1 个答案:

答案 0 :(得分:0)

您的listAdapter在滚动时重复使用视图,因此受影响的视图可能不再与滚动开始之前的视图相同。您应该在模型中添加一个ivar,然后更改它以指示该对象已被单击,现在具有不同的背景颜色。