android - recyclerview顯示錯亂
問題描述
滑動的時候,不該顯示的item也顯示了標(biāo)注(就是那個數(shù)字1)
@Override public void onBindChildViewHolder(MyChildViewHolder holder, int groupPosition, int childPosition, int viewType) { //...if (studentBean.getGalleryCount() != 0) { holder.childAlbumNum.setText(' ' + studentBean.getGalleryCount() + '’ ');} else { holder.childAlbumNum.setVisibility(View.GONE);} //... }
問題解答
回答1:RecyclerView是用于重用的,也就是說你的每一個條目,使用的有可能是前面已經(jīng)使用過的布局對象。所以你在onBindChildViewHolder里應(yīng)該對某些View的顯示與否做一下初始化設(shè)定。你的代碼里,我看到了你僅僅在某種情況下隱藏了一個View,但是卻沒有初始化它的顯示與否,這樣可能由于上一次顯示時是GONE的,這一次你設(shè)置的數(shù)據(jù),但是因?yàn)闆]有設(shè)置VISIBLE,所以就導(dǎo)致顯示不出來了。你的問題應(yīng)該就是這個,建議你在onBindChildViewHolder的開始部分加入:
holder.childAlbumNum.setVisibility(View.VISIBLE);回答2:
沒看出哪里有問題,那個數(shù)字1?
相關(guān)文章:
1. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?2. javascript - 關(guān)于audio標(biāo)簽暫停的問題3. 網(wǎng)頁爬蟲 - 用Python3的requests庫模擬登陸B(tài)ilibili總是提示驗(yàn)證碼錯誤怎么辦?4. 請教各位大佬,瀏覽器點(diǎn) 提交實(shí)例為什么沒有反應(yīng)5. javascript - 移動端textarea不能上下滑動,該怎么解決?6. Matlab和Python編程相似嗎,有兩種都學(xué)過的人可以說說嗎7. 大家好,請問在python腳本中怎么用virtualenv激活指定的環(huán)境?8. javascript - Html5做移到端定位,獲取授權(quán)拒絕了怎么辦?9. javascript - 微信小程序封裝定位問題(封裝異步并可能多次請求)10. javascript - Web微信聊天輸入框解決方案
