gridview里用setBackgroundColor改变了子项颜色,滚动后为什么就错乱了。
在activity里定义onWindowFocusChanged
public void onWindowFocusChanged(boolean hasFocus){
for (int i=0;i<=20;i++)
{
if (gvTable.getChildAt(i)!=null)
{
gvTable.getChildAt(i).setBackgroundColor(Color.YELLOW);
}
}
super.onWindowFocusChanged(hasFocus);
}
目的是想在activity的gridview中,将不同的item标记成不同颜色,但如果item在gridview可视范围内,则设置颜色都是正确的,但如果gridview来回滚动后,设置的颜色就错乱了。 gridview android 滚动 背景色 错乱
[解决办法]
if (gvTable.getChildAt(i)!=null)在这里能判断是不是你要的目标吗
[解决办法]
为什么不在Adapter的getView中写呢,超出屏幕后,隐藏的item会被复用进入getView中
如果想实现相间颜色,你在getView中计算position区分奇偶行显示