1. 程式人生 > >viewpager+fragment來回滑動fragment重新載入的簡單解決辦法

viewpager+fragment來回滑動fragment重新載入的簡單解決辦法

最近的一個專案用到了viewpager加fragment,但是來回滑動的時候會出現重新聯網載入的現象,仔細研究了發現其中的原因,在這裡分享一下。

起初比較迷惑,讓後就在fragment的生命週期中挨個log了一下最後發現在FragmentPagerAdapter預設會儲存的三個item也就是當前的一個,前一個和後一個。滑動過程中介面卡預設會把前一個之前的item destroy掉,所以當滑動回來時就依然會重新載入。也就是還會執行一次onCreateView的方法。分析其原因就是介面卡銷燬了之前的item,自然解決辦法就是不讓他銷燬。

具體方法就是重寫FragmentPagerAdapter的destroyItem方法註釋掉super.destroyItem(container, position, object);就行了。

@Override
		public void destroyItem(ViewGroup container, int position, Object object) {
			//super.destroyItem(container, position, object);
		}