如何用第二个项目启动TabLayout?(在Android中,在Fragment上,使用Kotlin)

wz1wpwve  于 2023-08-06  发布在  Kotlin
关注(0)|答案(2)|浏览(188)

我的Android应用程序运行得很好。带有TabLayout的片段从第一个项目开始,并按我的需要工作。但现在我需要从第二个项目开始使用TabLayout进行Fragment。然后我遇到了麻烦。
我找到了一种打开第二个选项卡的方法(不确定是否正确)。选项卡将第二个项目的标题显示为选中状态。但内容没有变。
1.如何以编程方式切换选项卡?
1.怎么和物太对调了?
我是Android开发的新手。我找不到解决办法。救命啊!

olhwl3o2

olhwl3o21#

您可以通过select()方法选择页签:

  1. int index = 1;
  2. TabLayout.Tab tab = binding.tabLayout.getTabAt(index);
  3. if (tab != null) tab.select();

字符串
当一个选项卡被选中时,你可以做你需要做的事情:

  1. binding.tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
  2. @Override
  3. public void onTabSelected(TabLayout.Tab tab) {
  4. int selectedTab = binding.tabLayout.getSelectedTabPosition();
  5. // do whatever you want
  6. }
  7. @Override
  8. public void onTabUnselected(TabLayout.Tab tab) {
  9. }
  10. @Override
  11. public void onTabReselected(TabLayout.Tab tab) {
  12. }
  13. });

展开查看全部
pgky5nke

pgky5nke2#

如果你用viewPager实现了tabLayout,你可以使用setCurrentItem切换标签(假设你想切换到secondTab):

  1. binding.viewPager.setCurrentItem(1, true)

字符串
如果你不使用viewpager,你可以用途:

  1. binding.tabLayout.getTabAt(1)?.select()

相关问题