我在ListView的每个项目中都有一个按钮,其背景由XML定义,启用时为一个背景,禁用时为另一个。当ListView加载时,它出来是正确的。但是,出于某些原因我无法弄清楚,如果我向下滚动然后向上滚动,则显示错误的背景。
我想知道这个问题的解决方案,但除此之外,一般来说我想要完成的是: 我在ListView中有一个按钮,将用户带到给定项目的网站。如果没有网站,我希望按钮消失或被禁用。我似乎对这两个选项都有同样的问题。
提前感谢您的努力
答案 0 :(得分:0)
似乎问题很可能出在你的getView()方法上。 Android会回收视图以节省内存,因此,例如,当您向下滚动时,它会在适配器上调用getView(int,View,ViewGroup),其中View是刚刚离开屏幕顶部的项目。如果您没有使用适配器中的新数据重新填充项目(即,只返回convertView),它会将放置在屏幕顶部的视图放在" new"一个应该是。