public class MainActivity3 extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main3);
TabLayout tabLayout = findViewById(R.id.layout_tab);
ViewPager2 viewPager2 = findViewById(R.id.pager_content);
ContentPagerAdapter contentPagerAdapter = new ContentPagerAdapter(this);
viewPager2.setAdapter(contentPagerAdapter);
List<String> tabElement = Arrays.asList("tab1","tab2","tab3");
//tabLayout viewPager2 연결
new TabLayoutMediator(tabLayout, viewPager2, new TabLayoutMediator.TabConfigurationStrategy() {
@Override
public void onConfigureTab(@NonNull TabLayout.Tab tab, int position) {
TextView textView = new TextView(MainActivity3.this);
textView.setText(tabElement.get(position));
tab.setCustomView(textView);
}
}).attach();
}
}
ContentPagerAdapter.java
public class ContentPagerAdapter extends FragmentStateAdapter {
private int mPageCount = 3;
//생성자
public ContentPagerAdapter(@NonNull FragmentActivity fragmentActivity) {
super(fragmentActivity);
}
@NonNull
@Override
public Fragment createFragment(int position) {
switch (position){
case 0:
Tab1Fragment tab1Fragment = new Tab1Fragment();
return tab1Fragment;
case 1:
Tab2Fragment tab2Fragment = new Tab2Fragment();
return tab2Fragment;
case 2:
Tab3Fragment tab3Fragment = new Tab3Fragment();
return tab3Fragment;
default: return null;
}
}
@Override
public int getItemCount() {
return mPageCount;
}
}