Android 如何在更改选项卡后更改页面视图?

Android 如何在更改选项卡后更改页面视图?,android,android-studio,tabs,android-viewpager,Android,Android Studio,Tabs,Android Viewpager,我立即为我的英语道歉)。我从谷歌上找到了一个代码,我把它安装在安卓工作室上,但是代码的结果不是我想要的。当我单击选项卡时,控件从item1到item2进入另一个(例如,item1、item2、item3、item4),但ListViev元素保持不变。如何在单击tab控件后更改PageViev元素 final TabLayout tab=findViewById(R.id.tabs); final ViewPager viewPager=findViewById(R.id.view_p

我立即为我的英语道歉)。我从谷歌上找到了一个代码,我把它安装在安卓工作室上,但是代码的结果不是我想要的。当我单击选项卡时,控件从item1到item2进入另一个(例如,item1、item2、item3、item4),但ListViev元素保持不变。如何在单击tab控件后更改PageViev元素

  final TabLayout tab=findViewById(R.id.tabs);
    final ViewPager viewPager=findViewById(R.id.view_pager);
    tab.removeAllTabs();
    for (int k = 0; k <GoodsGroupList.size(); k++) {
       tab.addTab(tab.newTab().setText("" + GoodsGroupList.get(k)));
    }

    tab.setTabMode(TabLayout.MODE_SCROLLABLE);  
    PlansPagerAdapter adapter = new PlansPagerAdapter(getSupportFragmentManager(), tab.getTabCount());
    viewPager.setAdapter(adapter);
    viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tab));
final TabLayout tab=findviewbyd(R.id.tabs);
final ViewPager ViewPager=findViewById(R.id.view\u pager);
tab.removeAllTabs();
对于(int k=0;k

我发现了一个类似的问题,并添加了部分代码,并在5月份解决了这个问题

tab.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
            @Override
            public void onTabSelected(TabLayout.Tab tab) {
                viewPager.setCurrentItem(tab.getPosition());
                Log.d("Tab", String.valueOf(tab.getPosition()));
            }

            @Override
            public void onTabUnselected(TabLayout.Tab tab) {

            }

            @Override
            public void onTabReselected(TabLayout.Tab tab) {

            }
        });
<ListView
    android:id="@+id/ListViewer"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:divider="@drawable/list_divider"
    tools:ignore="MissingConstraints" />
tab.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
            @Override
            public void onTabSelected(TabLayout.Tab tab) {
                viewPager.setCurrentItem(tab.getPosition());
                Log.d("Tab", String.valueOf(tab.getPosition()));
            }

            @Override
            public void onTabUnselected(TabLayout.Tab tab) {

            }

            @Override
            public void onTabReselected(TabLayout.Tab tab) {

            }
        });