164 lines
4.7 KiB
Plaintext
164 lines
4.7 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();*/
|
|||
|
|
|||
|
}
|
|||
|
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);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
}
|