fragment 中使用FragmentPagerAdapter 二次進入顯示空白頁面

在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);
    }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章