Android ViewPager 取消預加載
android 新引入的Fragment加入了Viewpager這樣的一個組件。至於該控件的功能在這裏就不說了。這篇文章主要解決fragment viewpager預加載的問題。
默認的viewpager是會預先加載下一個fragment的控件的,可以通過setOffscreenPageLimit(int limit) 來設置要提前加載的fragment。即是說當limit等於5
的時候,打開第一個fragment的時候就相當於同時打開了其他的4個fragment了。這樣切換的時候將會非常流暢。
但是,當每個fragment都需要去聯網加載網絡數據或者做一些耗時的操作,而且有其他的fragment並不是必須的,用戶不一定會打開。這樣的話如果還
預加載的話將會浪費資源,用戶體驗也不好。雖然可以通過setOffscreenPageLimit(0)來設置不提前預加載,但這樣的設置沒有效果。通過研究ViewPager的
源碼,可以設置該類默認的DEFAULT_OFFSCREEN_PAGES = 0,來預防預加載。
下面是我整理的android-support-v4.jar,兼容了所有新版本和舊版本。