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; } }