2011-11-30 76 views
0

我在ListView的每个项目中都有一个按钮,其背景由XML定义,一个背景启用时另一个背景,当禁用时另一个背景。当ListView加载时,它显示正确。但是,由于某种原因,我无法弄清楚,如果我向下滚动然后向上滚动,出现错误的背景。ListView发生故障的按钮

我想知道这个问题的解决方案,但除此之外,我一般想要完成的是: 我在ListView中有一个按钮,让用户访问给定项目的网站。如果没有网站,我希望按钮消失或被禁用。我似乎对这两个选项都有同样的问题。

预先感谢你的努力

+0

也许你错了在'getView()'方法中重用视图?那么一些源代码呢? –

回答

0

它似乎最有可能的是,问题在于你的getView()方法。 Android回收视图以节省内存,因此,例如,向下滚动时,它会在适配器上调用getView(int,View,ViewGroup),其中View是刚刚离开屏幕顶部的项目。如果您没有使用适配器中的新数据重新填充项目(即,只是返回convertView),则会将View留在屏幕顶部,即“新”的位置。