TabLayout动态添加framgnet

public class MainActivity extends AppCompatActivity {
    private ArrayList<Fragment> fragments = new ArrayList<>();
    private ViewPager viewpager;
    private TabLayout tabLayout;
    private String[] titles = new String[]{"最新","热门","我的"};
    private adapter myadapter;
    private com.example.bw.tablelayout.adapter adapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        intit();
    }
    private void intit() {
        viewpager = findViewById(R.id.viewpager);
        tabLayout = findViewById(R.id.tablayout);
//        for(int i=0;i<titles.length;i++){
//            fragments.add(new TabFragment());
//          tabLayout.addTab(tabLayout.newTab());
//
//        }
        for (int i=0;i<titles.length;i++){
            fragments.add(new TabFragment());
            tabLayout.addTab(tabLayout.newTab());
            tabLayout.getTabAt(i).setText(titles[i]);
        }
        tabLayout.setupWithViewPager(viewpager,false);
        adapter = new adapter(fragments, getSupportFragmentManager());
        viewpager.setAdapter(adapter);
//        for(int i=0;i<titles.length;i++){
//            tabLayout.getTabAt(i).setText(titles[i]);
//        }

    }

//适配器

public class adapter extends FragmentPagerAdapter {

    private final ArrayList<Fragment> fragments;

    public adapter( ArrayList<Fragment>  fragments,FragmentManager fm) {
        super(fm);
        this.fragments =fragments;
    }

    @Override
    public Fragment getItem(int position) {
        return fragments.get(position);
    }

    @Override
    public int getCount() {
        return fragments != null && !fragments.isEmpty() ? fragments.size() : 0;
    }
}

猜你喜欢

转载自blog.csdn.net/qq_43578439/article/details/85253793
今日推荐