[Android Pro] fragment中嵌套viewpager,vierpager中有多個fragment,不顯示


referece to :  http://blog.csdn.net/mybook1122/article/details/24003343

現在好多應用流行一種布局。底部幾個工具欄選項,上面也有類似tab的選項。

 


底部用RadioGroup控制fragment的切換。以上有五個fragment。

第一個fragment,代表着首頁。首頁又是一個類似tab的fragment,使用viewpager切換着兩個fragment。


 private void InitViewPager(View parentView) {
       mPager = (ViewPager) parentView.findViewById(R.id.vPager);
       fragmentsList = new ArrayList<Fragment>();


       fragment1 = new SortHotFragment();
       fragment2 = new SortNewFragment();


       fragmentsList.add(fragment1);
       fragmentsList.add(fragment2);
       
       mPager.setAdapter(new MyFragmentPagerAdapter(getActivity().getSupportFragmentManager(), fragmentsList));
       mPager.setCurrentItem(0);
       mPager.setOnPageChangeListener(new MyOnPageChangeListener());
 }


一般根據往常的經驗,如果要傳入fragmentmanager,都是紅色字體部分。

但是,這樣會導致一個問題:數據丟失。

在fragment切換來回時,其他單個的fragment里面的數據不會丟失,而使用了viewpager的多個fragment切換的fragment會一團漆黑。


解決辦法:

將紅色字體部分,用getChildFragmentManager() 替換。

mPager.setAdapter(new MyFragmentPagerAdapter(getActivity().getChildFragmentManager(), fragmentsList));
mPager.setCurrentItem(0);
mPager.setOnPageChangeListener(new MyOnPageChangeListener());


之前一直在忙,才發現很多網友留言請求代碼,非常抱歉。現在寫了一個簡單的demo,現將下載地址貼在下面。

下載地址:http://download.csdn.net/download/mybook1122/7657137



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM