简单记录一下
public void InitView(){
final ArrayList<String> titleList = new ArrayList<>();
titleList.add("1");
titleList.add("2");
titleList.add("3");
TabLayout tab = findViewById(R.id.tab_layout);
ViewPager viewPager = findViewById(R.id.view_pager);
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
Log.e("PageChange-Scroll", "position:" + position + ",positionOffset:" +
positionOffset + ",offsetPixels:" + positionOffsetPixels);
}
@Override
public void onPageSelected(int position) {
Log.e("PageChange-Select", "position:" + position);
//给标题textview设置对应标题,设置时机在这里
}
@Override
public void onPageScrollStateChanged(int state) {
switch (state) {
case ViewPager.SCROLL_STATE_IDLE:
Log.e("PageChange-State", "state:SCROLL_STATE_IDLE(滑动闲置或滑动结束)");
break;
case ViewPager.SCROLL_STATE_DRAGGING:
Log.e("PageChange-State", "state:SCROLL_STATE_DRAGGING(手势滑动中)");
break;
case ViewPager.SCROLL_STATE_SETTLING:
Log.e("PageChange-State", "state:SCROLL_STATE_SETTLING(代码执行滑动中)");
break;
default:
break;
}
}
});
final ArrayList<Fragment>fraList = new ArrayList<>();
fraList.add(new BlankFragment1());
fraList.add(new BlankFragment1());
fraList.add(new BlankFragment1());
viewPager.setOffscreenPageLimit(fraList.size());
viewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {
@NonNull
@Override
public Fragment getItem(int position) {
return fraList.get(position);
}
@Override
public int getCount() {
return fraList.size();
}
@Nullable
@Override
public CharSequence getPageTitle(int position) {
return titleList.get(position);
}
});
tab.setupWithViewPager(viewPager);
tab.setTabMode(TabLayout.MODE_FIXED);
}
参考资料 https://blog.csdn.net/weixin_39095733/article/details/84109985