package com.novelbook.android; import android.content.Intent; import android.support.design.widget.FloatingActionButton; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.view.ViewPager; import android.util.Log; import android.view.View; import com.novelbook.android.Fragments.Fragment_shudan_list; import com.flyco.tablayout.SlidingTabLayout; import java.util.ArrayList; import butterknife.BindView; public class Activity_shudan_my extends Activity_base { public static String TAG ="com.novelbook.android.Activity_shudan_my"; @BindView(R.id.viewpager) ViewPager mViewpager; @BindView(R.id.tab_layout) SlidingTabLayout tabLayout; @BindView(R.id.fab) FloatingActionButton fab; private ArrayList mFragments; ArrayList mList; String[] mTitle; @Override public int getLayoutRes() { return R.layout.activity_shudan_my; } @Override protected void initViews() { fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Intent intent = new Intent(Activity_shudan_my.this, Activity_createShudan.class); intent.putExtra("SHUDANID",0); startActivity(intent); } }); initTabs(); } @Override protected void setTitle() { setTitle("我的书单"); } @Override protected void initData() { } @Override public void fillData() { } void initTabs() { if(mFragments ==null || mFragments.size() ==0){ mTitle = new String[]{"已发布", "草稿", "收藏"}; mFragments = new ArrayList<>(); mFragments.add(new Fragment_shudan_list()); mFragments.add(new Fragment_shudan_list()); mFragments.add(new Fragment_shudan_list()); 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 FragmentPagerAdapter mAdapter = new FragmentPagerAdapter(getSupportFragmentManager()) { @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.setAdapter(mAdapter); tabLayout.setViewPager(mViewpager); // tabLayout.setViewPager(mViewpager, mTitle, activity, mFragments); mViewpager.setCurrentItem(0); } }