在fragment 中使用FragmentPagerAdapter 的viewpager的切換效果,從A的fragment切換到B的FragmentPagerAdapter 裏面的fragment的會出現空白的頁面,需要檢查一下在給FragmentPagerAdapter 傳入FragmentManager的時候是要用
getChildFragmentManager()
這個方法很重要,否則就會出現空白界面。
取消viewpager中fragment的預加載可以使用如下方法,這個方法可以讓數據實現懶加載:
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
//判斷Fragment中的ListView時候存在,判斷該Fragment時候已經正在前臺顯示 通過這兩個判斷,就可以知道什麼時候去加載數據了
if (isVisibleToUser ) {
initData(); //加載數據的方法
}
super.setUserVisibleHint(isVisibleToUser);
}
//這個方法會在切換到Fragment顯示的時候去調用。
//爲了保證一開始加載Fragment的時候該方法提前調用,導致的數據不會加載,我在代碼中做出瞭如下的判斷:
@Override
public void onActivityCreated(Bundle savedInstanceState) {
if (getUserVisibleHint() ) {
initData();
}
super.onActivityCreated(savedInstanceState);
}