所以我有一个带有ViewPager的TabLayout设置,如下所示。现在,当我从标签水平滚动到标签或通过点击标题选择标签时,它将使所选标签居中,但我想根据所选标签将滚动位置一直向右或向左移动。我试图在Fitocracy app中完成所做的工作,图片如下所示:
基本上你可以看到整整一周或另一周,除了星期天之外的任何一天都不会在左边。
我尝试使用setScrollX
和我的屏幕宽度一直向右滚动,但是没有做任何事情。
final CustomTabLayout tabLayout = (CustomTabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
tabLayout.setOnTabSelectedListener(
new TabLayout.ViewPagerOnTabSelectedListener(viewPager) {
@Override
public void onTabSelected(TabLayout.Tab tab) {
super.onTabSelected(tab);
int tabNum = viewPager.getCurrentItem();
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
Log.e("MainActivity","Current tabNum: " + tabNum);
if (tabNum >= 7) {
Log.e("MainActivity", "Scroll position: " + tabLayout.getScrollX());
tabLayout.setScrollX(width);
}
}
});
感谢任何帮助!