TabLayout 中的选项卡(带有 ViewPager)在选择或滑动到最右侧页面时不可见
Tab in the TabLayout (with ViewPager) is not visible when selected or swiped to right most page
我已经使用新的 Android 设计库(23.0.1 版本)实现了选项卡。我跟着这个 link http://blog.grafixartist.com/material-design-tabs-with-android-design-support-library/.
一切都很好,但是:我总共有 7 个选项卡,因此在 phone 屏幕中不会同时看到所有选项卡,因为所有选项卡的宽度都大于屏幕宽度。当我选择最右边的选项卡(或右侧的任何选项卡)时,它不会到达 TabLayout 的中间(屏幕中间),以便右侧的下一个隐藏选项卡可见。
即使当我向右滑动到大多数页面时,它也会选择标签下方显示指示符的标签,但所选标签不在屏幕上。它应该移动到屏幕中间。
有线索吗?
我必须添加
tabLayout.setTabMode(TabLayout.MODE_SCROLLABLE)
源代码
或
app:tabMode="scrollable"
在 XML.
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
tabLayout.setScrollPosition(position,positionOffset,true);
}
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
使用方法 addOnPageChangeListener 对我有用
我已经使用新的 Android 设计库(23.0.1 版本)实现了选项卡。我跟着这个 link http://blog.grafixartist.com/material-design-tabs-with-android-design-support-library/.
一切都很好,但是:我总共有 7 个选项卡,因此在 phone 屏幕中不会同时看到所有选项卡,因为所有选项卡的宽度都大于屏幕宽度。当我选择最右边的选项卡(或右侧的任何选项卡)时,它不会到达 TabLayout 的中间(屏幕中间),以便右侧的下一个隐藏选项卡可见。
即使当我向右滑动到大多数页面时,它也会选择标签下方显示指示符的标签,但所选标签不在屏幕上。它应该移动到屏幕中间。
有线索吗?
我必须添加
tabLayout.setTabMode(TabLayout.MODE_SCROLLABLE)
源代码
或
app:tabMode="scrollable"
在 XML.
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
tabLayout.setScrollPosition(position,positionOffset,true);
}
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
使用方法 addOnPageChangeListener 对我有用