处理手动锁定后的片段查看寻呼机

问题描述:

其实,我实现了TabLayout,所以在MainActivity中,我加载了TabFragment和tabFragment(包含两个fragments)我使用了ViewPager。处理手动锁定后的片段查看寻呼机

所以,问题是,当我在TabLayout片段二,在屏幕后熄灭它会移动到片段一个默认一个)。那么,如何才能解决这个

这里是TabFragment代码:

public class TabFragment extends Fragment { 


    public TabFragment() { 
     // Required empty public constructor 
    } 
    public static TabLayout tabLayout; 
    public static ViewPager viewPager; 
    public static int int_items = 2 ; 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
          Bundle savedInstanceState) { 
     View x=inflater.inflate(R.layout.content_main_menu,null); 
     tabLayout=(TabLayout) x.findViewById(R.id.tabs); 
     viewPager =(ViewPager) x.findViewById(R.id.viewpager); 
     setupViewPager(viewPager); 
     //viewPager.setAdapter(new MyAdapter(getChildFragmentManager())); 
     viewPager.setOffscreenPageLimit(1); 
     tabLayout.post(new Runnable() { 
      @Override 
      public void run() { 
       tabLayout.setupWithViewPager(viewPager); 
      } 
     }); 
    return x; 
    } 


    private void setupViewPager(ViewPager viewPager) { 
     MyAdapter adapter = new MyAdapter(getChildFragmentManager()); 
     adapter.addFragment(new HomeFragment(), "Fragment One"); 
     adapter.addFragment(new Offers(), "fragment Two"); 

     viewPager.setAdapter(adapter); 
    } 
    class MyAdapter extends FragmentPagerAdapter{ 
     private final List<Fragment> mFragmentList = new ArrayList<>(); 
     private final List<String> mFragmentTitleList = new ArrayList<>(); 
     public MyAdapter(FragmentManager fm) { 
      super(fm); 
     } 

     @Override 
     public Fragment getItem(int position) { 
      return mFragmentList.get(position); 
     } 

     @Override 
     public int getCount() { 
      return mFragmentList.size(); 
     } 
     public void addFragment(Fragment fragment, String title) { 
      mFragmentList.add(fragment); 
      mFragmentTitleList.add(title); 
     } 

     @Override 
     public CharSequence getPageTitle(int position) { 
      return mFragmentTitleList.get(position); 
     } 
    } 
    } 
+0

哟意思是“屏幕熄灭后”是什么意思? – santalu

+0

@techDigi可以请你发布你的主要活动onResume()代码。 –

+0

我只是覆盖的onResume()方法,并调用超 – techDigi

使用FragmentStatePagerAdapter而不是FragmentPagerAdapter。阅读文档hereFragmentStatePagerAdapter只存储片段的savedInstanceState,并在失去焦点时销毁所有片段。

+0

仍然是同样的问题 – techDigi

+0

你确定使用getChildFragmentManager()吗?尝试与getFragmentManager() – droidev

+0

是的,我尝试了两个,但同样的问题 – techDigi