作者crazyma (ma)
看板AndroidDev
标题Re: [问题] ListView 图片错误
时间Tue Jan 8 17:57:06 2013
※ 引述《issuemylove (skill)》之铭言:
: 我主要想要显示 ListView 成下面这个样子
: ┌────────────┐
: │ title │
: │ │
: │ │
: ├────────────┤
: │ title ┌───┐│
: │ │image ││ <= 只有在 position = 4 的时候才显示对应的图片
: │ └───┘│
: ├────────────┤
: ...
: 今天我遇到的问题是
: "当我快速 scroll 的时候,其它position的地方也会出现图片"
: 意思就是本来不应该出现图片的地方 竟然出现了该图片...
发现好多人一开始写ListView都会遇到这问题
简单说就是ListView的每个Item都会重复使用
例如你的ListView可能总共有10个item
但是画面一次可能只能显示4个
则Android实际只产生4个item row
所以如果翻到第5个item的时候
会把第1个item捡起来用
如果此时这个item有残值,就会出现你遇到的状况了
所以比较好的作法是:每次在getView的时候仔细定义你的view
例如
View getView(){
...
if(position == 4){
// show imageview
} else{
// hide imageview
}
.....
}
推文中的kewang大大作法也是正解
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.233.145.30
1F:→ issuemylove:原来如此QQ 谢谢! 01/09 01:56