当我在片段之间滑动时,tabindicator不会在tablayout中从一个选项卡滑动到另一个选项卡.字体的突出显示也没有改变

Pra*_*kar 7 tabs android android-tablayout

public class LoginRegister extends AppCompatActivity implements SignUpFragment.OnFragmentInteractionListener ,SignInFragment.OnFragmentInteractionListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_login_register);
    final TabLayout tabLayout = (TabLayout) findViewById(R.id.tab_layout_signup);
    tabLayout.addTab(tabLayout.newTab().setText("Sign Up"));
    tabLayout.addTab(tabLayout.newTab().setText("Sign in"));
    tabLayout.setTabGravity(TabLayout.GRAVITY_FILL);        
    final ViewPager pager =(ViewPager) findViewById(R.id.loginpager);
    final SigninPagerAdapter adapter = new SigninPagerAdapter(getSupportFragmentManager(),tabLayout.getTabCount());
    pager.setAdapter(adapter);
    tabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
        @Override
        public void onTabSelected(TabLayout.Tab tab) {
            pager.setCurrentItem(tab.getPosition());
        }
        @Override
        public void onTabUnselected(TabLayout.Tab tab) {
}
        @Override
        public void onTabReselected(TabLayout.Tab tab) {
        }
    });
Run Code Online (Sandbox Code Playgroud)

当我滑过片段时,标签的高光不会改变,但是当我触摸标签时它会正常工作.当我触摸它们时,标签指示器从左向右滑动很好,标签的字体颜色也会突出显示.我认为问题在于这段代码

pager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
        }

        @Override
        public void onPageSelected(int position) {


        }

        @Override
        public void onPageScrollStateChanged(int state) {

        }
    });

}


@Override
public void onFragmentInteraction(Uri uri) {

}
}
Run Code Online (Sandbox Code Playgroud)

我该怎么做才能突出显示当前标签...

Pra*_*kar 13

我找到了解决方案.

tabLayout.setupWithViewPager(pager);
Run Code Online (Sandbox Code Playgroud)

这种方法很容易设置一切.