165 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			165 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 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<BasicFragment> mFragments;
 | ||
|   //  private ArrayList<BasicFragment> mFragments_cp;
 | ||
|     ArrayList<View> 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<mAdapter.getCount();i++){
 | ||
|                 ((BasicFragment)   mAdapter.getItem(i)).initData();
 | ||
|             }*/
 | ||
|         /*    fragment_jingxuan.initData();
 | ||
|             fragmentCates.initData();
 | ||
|             fragment_bangdans.initData() ;
 | ||
| 
 | ||
|             mAdapter.notifyDataSetChanged();*/
 | ||
| 
 | ||
|         }
 | ||
|         Log.d(TAG, "setSexOption: to  reload 3 fragment data"  );
 | ||
|         fragment_jingxuan.initData();
 | ||
|         fragmentCates.initData();
 | ||
|         fragment_bangdans.initData() ;
 | ||
|     }
 | ||
| 
 | ||
|     @Override
 | ||
|     public void initViews(){
 | ||
|         initTabs();
 | ||
|     }
 | ||
| 
 | ||
|     //---------tabs-------------
 | ||
| 
 | ||
|     void initTabs() {
 | ||
| 
 | ||
|         if(mFragments ==null || mFragments.size() ==0){
 | ||
|            // mTitle = new String[]{"精选", "榜单", "书单"};
 | ||
|             mFragments = new ArrayList<>();
 | ||
|             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);
 | ||
|     }
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| }
 |