package com.novelbook.android.Fragments; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.app.FragmentStatePagerAdapter; import android.support.v4.view.ViewPager; import android.util.Log; import android.view.View; import com.novelbook.android.R; import com.flyco.tablayout.SlidingTabLayout; import com.umeng.analytics.MobclickAgent; import java.util.ArrayList; import butterknife.BindView; public class Fragment_bookStore extends BasicFragment { public final static String TAG=Fragment_bookStore.class.getSimpleName(); public static String getFTag() { return "com.novelbook.android.Fragments.Fragment_bookStore"; } @BindView(R.id.viewpager) ViewPager mViewpager; @BindView(R.id.tab_layout) SlidingTabLayout tabLayout; private FragmentStatePagerAdapter mAdapter =null; private ArrayList mFragments; // private ArrayList mFragments_cp; ArrayList mList; String[] mTitle; Fragment_jingxuan fragment_jingxuan; FragmentCates fragmentCates; Fragment_bangdans fragment_bangdans; protected void processArguments(){ if (getArguments() != null) { Bundle bundle = getArguments() ; } } @Override protected void fillData() { } public static Fragment_bookStore newInstance(String param1, String param2) { Fragment_bookStore fragment = new Fragment_bookStore(); Bundle args = new Bundle(); fragment.setArguments(args); return fragment; } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.d(TAG,"Fragment_bookStore fragment onCreate "); fragment_jingxuan = new Fragment_jingxuan(); fragmentCates =FragmentCates.newInstance(); fragment_bangdans = new Fragment_bangdans(); } @Override protected int getLayoutRes() { return R.layout.fragment_book_store; } @Override public void initData() { mTitle = new String[]{"精选","分类", "榜单"}; } public void onSexSwitch(){ if(mAdapter!=null) { /* for(BasicFragment bf: mFragments_cp){ bf.initData(); }*/ /* for(int i=0;i(); mFragments.add(fragment_jingxuan); mFragments.add(fragmentCates); mFragments.add(fragment_bangdans); // mFragments_cp = new ArrayList<>(); // mFragments_cp.addAll(mFragments); // mFragments.add(new Fragment_shudan()); Log.d(TAG,"initial fragments in tabs "); } Log.d(TAG,"set viewPager adapter "); // FragmentPagerAdapter mAdapter = new FragmentPagerAdapter(activity.getSupportFragmentManager()) { 第一次进入没问题,再次进入ViewPager的fragment时里面内容就没了,数据丢失 https://blog.csdn.net/allan_bst/article/details/64920076 mAdapter = new FragmentStatePagerAdapter(getChildFragmentManager()) { @Override public Fragment getItem(int position) { return mFragments.get(position); } @Override public int getCount() { return mFragments.size(); } //ViewPager与TabLayout绑定后,这里获取到PageTitle就是Tab的Text @Override public CharSequence getPageTitle(int position) { return mTitle[position]; } }; mViewpager.setOffscreenPageLimit(4);//预加载设置 mViewpager.setAdapter(mAdapter); tabLayout.setViewPager(mViewpager); // tabLayout.setViewPager(mViewpager, mTitle, activity, mFragments); // mViewpager.setCurrentItem(0); } @Override public void onResume() { super.onResume(); MobclickAgent.onPageStart(TAG); } @Override public void onPause(){ super.onPause(); MobclickAgent.onPageEnd(TAG); } }