Re: [問題] ListView 圖片錯誤
※ 引述《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
→
01/09 01:56, , 1F
01/09 01:56, 1F
討論串 (同標題文章)