Android ViewPager動(dòng)態(tài)加載問題
今天做項(xiàng)目時(shí),糾結(jié)了很久,動(dòng)態(tài)添加view,剛開始按照其他的adapter處理,但是不會(huì)刷新view,來回翻幾頁,還會(huì)view覆蓋,最后手動(dòng)調(diào)用adapter的destroyItem和instantiateItem方法,還是不行,最后重寫notifyDataSetChanged中removeAllViews和instantiateItem,有點(diǎn)效果,可是還是不理想。最后查詢資料要重寫PagerAdapter的方法
如下:
public int getItemPosition(Object object) { return POSITION_NONE; }
,然后刷新數(shù)據(jù)的時(shí)候先removeAllViews,然后重新設(shè)置數(shù)據(jù),最后notifyDataSetChanged,就成了。
但是在重新加載數(shù)據(jù)的時(shí)候notifyDataSetChanged之后會(huì)調(diào)用destroyItem,這個(gè)時(shí)候就會(huì)出問題,destroyItem記錄的views的索引是大于0的,但是重新加載的views的count為1的時(shí)候,這是removeView的時(shí)候會(huì)出現(xiàn)數(shù)組越界錯(cuò)誤,處理方法就是
@Override public void destroyItem(View arg0, int arg1, Object arg2) { if (getCount() > 1) { ((GridViewPager) arg0).removeView(((GridViewPager) arg0) .getViewList().get(arg1)); } }
做完了,很郁悶,到底是第三方那個(gè)的控件,還沒有完善,不想其他的Adapter那么好。通過此文章記錄這次的郁悶之旅,呵呵。
以上所述是小編給大家介紹的Android ViewPager動(dòng)態(tài)加載問題,希望對(duì)大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- Android之Viewpager+Fragment實(shí)現(xiàn)懶加載示例
- android實(shí)現(xiàn)ViewPager懶加載的三種方法
- 詳解Android_性能優(yōu)化之ViewPager加載成百上千高清大圖oom解決方案
- android 解決ViewPager加載大量圖片內(nèi)存溢出問題
- Android ViewPager制作新手導(dǎo)航頁(動(dòng)態(tài)加載)
- Android 使用ViewPager自動(dòng)滾動(dòng)循環(huán)輪播效果
- Android ViewPager實(shí)現(xiàn)圖片輪播效果
- Android使用ViewPager實(shí)現(xiàn)自動(dòng)輪播
- Android中用RxJava和ViewPager實(shí)現(xiàn)輪播圖
- Android使用ViewPager加載圖片和輪播視頻
相關(guān)文章
Android開發(fā)實(shí)現(xiàn)的簡單計(jì)算器功能【附完整demo源碼下載】
這篇文章主要介紹了Android開發(fā)實(shí)現(xiàn)的簡單計(jì)算器功能,結(jié)合實(shí)例形式分析了Android計(jì)算器的具體實(shí)現(xiàn)步驟與相關(guān)操作技巧,并附帶完整demo源碼供讀者下載參考,需要的朋友可以參考下2017-11-11詳解Android JetPack之LiveData的工作原理
這篇文章主要介紹了詳解Android JetPack之LiveData的工作原理,幫助大家更好的理解和學(xué)習(xí)使用Android開發(fā),感興趣的朋友可以了解下2021-03-03微信小程序—微信跳一跳,Android游戲助手(外掛)使用教程詳解
這篇文章主要介紹了微信小程序—微信跳一跳,Android游戲助手(外掛)使用教程詳解,需要的朋友可以參考下2018-01-01解決Could not find com.android.tools.build:gradle:3.0.0
這篇文章主要介紹了在Android Studio升級(jí)時(shí)碰到Could not find com.android.tools.build:gradle:3.0.0問題的解決方法,需要的朋友跟隨小編一起看看吧2021-08-08Android與iOS包體優(yōu)化及一鍵自動(dòng)打包腳本
這篇文章主要為大家介紹了安卓與iOS包體優(yōu)化及一鍵自動(dòng)打包腳本詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09Android中檢查、監(jiān)聽電量和充電狀態(tài)的方法
這篇文章主要介紹了Android中檢查、監(jiān)聽電量和充電狀態(tài)的方法,如判斷當(dāng)前充電狀態(tài)、監(jiān)聽充電狀態(tài)的改變、判斷當(dāng)前剩余電量等,需要的朋友可以參考下2014-06-06Android開發(fā)新手常見的10個(gè)誤區(qū)
這篇文章主要介紹了Android開發(fā)新手常見的10個(gè)誤區(qū),我們?nèi)匀豢吹搅四男┬碌腁ndr​​oid開發(fā)人員不斷重復(fù)的錯(cuò)誤,這里有10個(gè)最常見的誤區(qū),需要的朋友可以參考下2015-03-03