android viewpage预加载和懒加载问题
1、本人理解懶加載和預(yù)加載問(wèn)題某種情況下可以歸結(jié)為一類問(wèn)題,下面我就說(shuō)一下我遇到的預(yù)加載問(wèn)題和懶加載問(wèn)題及解決的相應(yīng)方法:
?
?- [1 ] 預(yù)加載問(wèn)題
??????? 描述:我用到了三個(gè)fragment、viewpage及tablayout實(shí)現(xiàn)點(diǎn)擊切換、滑動(dòng)切換。
??????? 解決方法一(不成功,可以借鑒)、我百度網(wǎng)上給的方法說(shuō)禁止viewpage預(yù)加載要改動(dòng)v4包中viewpage類中一個(gè)全局變量(那個(gè)變量就不細(xì)說(shuō)了,網(wǎng)上都有),我按照上面說(shuō)的,復(fù)制android 4.0的v4包中的viewpage代碼,還需要修改一下才行,終于沒(méi)錯(cuò)了,然后所有的viewpage都換成這個(gè),問(wèn)題出現(xiàn)了,tablelayout與viewpage關(guān)聯(lián)的時(shí)候出錯(cuò)了,問(wèn)題大致意思就是這個(gè)viewpage不是v4包中的viewpage,我看了一下tablelayout中的代碼,果真如此,里面關(guān)聯(lián)方法中的參數(shù)寫的死的,必須是v4包中的viewpage,到這我不是道以我的能力要這樣實(shí)現(xiàn),估計(jì)要復(fù)制所有相關(guān)代碼,所以果斷放棄。
??????? 解決方法二、fragment類中有一個(gè)方法,當(dāng)fragment可見(jiàn)或影藏的時(shí)候都會(huì)調(diào)用這個(gè)方法,調(diào)用順序在onCreateView方法之前。現(xiàn)在上代碼。
????????? @Override
??? public void setUserVisibleHint(boolean isVisibleToUser) {
??????? super.setUserVisibleHint(isVisibleToUser);
????????? isshow=isVisibleToUser;
??????? if(!firstshow){?????????? //判斷是否是第一次可見(jiàn)
??????????? if(isshow){?????????? //判斷是否可見(jiàn)
??????????????? showdialog();
??????????????? getdata();
??????????? }
??????? }
??????? }
??????? 當(dāng)然這樣判斷并沒(méi)有解決我的問(wèn)題,我在oncreateview中加了判斷,如果是第一次展示,那么要再onCreateview中加載數(shù)據(jù),否則可以再setUserVisibleHint方法中加載。
???????? if(firstshow&&isshow){
??????????? showdialog();
??????????? getdata();
??????????? firstshow=false;
??????? }
所有的問(wèn)題在這就結(jié)束了。如有什么問(wèn)題可以留言,因?yàn)椴┛臀矣袉?wèn)題才會(huì)看,并且更新,特別急的問(wèn)題可以發(fā)郵件:hello.zzh@qq.com
轉(zhuǎn)載于:https://www.cnblogs.com/moyu-z/p/10515419.html
總結(jié)
以上是生活随笔為你收集整理的android viewpage预加载和懒加载问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: sql server 更改端口之后的登入
- 下一篇: hdu2094产生冠军