TabLayout控制滚动位置

时间:2016-04-16 05:16:34

标签: java android android-viewpager android-tablayout

所以我有一个带有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);
                    }
                }
            });

感谢任何帮助!

0 个答案:

没有答案