具有FragmentStatePageAdapter和ViewPager的多个选项卡

问题描述

下午好,我有一个使用Tab布局包含4个片段的活动,当我初始化Activity时,一次只能初始化两个片段,例如,当我在第一个片段中时,片段1和2被初始化,当我滑到2会初始化第三个,然后2和3会被初始化,第一个会被破坏,每个人都可以一起初始化吗?

这是我的适配器:

public class TabManualAdapter extends FragmentStatePagerAdapter {


private String[] tituloTabsManual = {"TAB1","TAB2","TAB3","TAB4"};



public TabManualAdapter(@NonNull FragmentManager fm) {
    super(fm);
}

@NonNull
@Override
public Fragment getItem(int position) {
    Fragment fragment = null;
    switch (position){
        case 0 :
            fragment = new Fragment1();
            break;
        case 1 :
            fragment = new Fragment2();
            break;

        case 2:
            fragment = new Fragment3();
            break;

        case 3:
            fragment = new Fragment4();
            break;
    }
    return fragment;
}

@Override
public int getCount() {
    return tituloTabsManual.length;
}

@Nullable
@Override
public CharSequence getPageTitle(int position) {
    return tituloTabsManual[position];
}

}

和活动代码

  @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_manual);

  
    SlidingTabLayout slidingTabLayout = findViewById(R.id.stl_tabs_manual);
    viewPager =  findViewById(R.id.vp_pagina_manual);
    viewPager.setPageTransformer(true,new ZoomOutPageTransformer());

  

    slidingTabLayout.setSelectedindicatorColors(ContextCompat.getColor(this,R.color.colorPrimary));
    slidingTabLayout.setdistributeEvenly(true);
    slidingTabLayout.setBackgroundColor( ContextCompat.getColor( this,R.color.black ) );

    TabManualAdapter tabManualAdapter = new TabManualAdapter(getSupportFragmentManager());
    viewPager.setAdapter(tabManualAdapter);

    CircleIndicator indicator =  findViewById(R.id.indicator);
    indicator.setViewPager(viewPager);

    slidingTabLayout.setViewPager(viewPager);

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)