如何在更改选项卡后更改 PageView?
How to change PageView after change tabs?
我立即为我的英语道歉)。我从一个google找到了一个代码,我把它安装在一个android工作室,但是代码的结果不是我想要的。当我单击选项卡时,控件进入另一个(例如,item1、item2、item3、item4)从 item1 到 item2,但 ListViev 元素保持不变。如何让PageViev元素在点击tab控件后发生变化?
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));
Fragment_home.xml
<com.google.android.material.tabs.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#000000"
tools:ignore="MissingConstraints" />
<androidx.viewpager.widget.ViewPager
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="48dp"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
android:layout_below="@+id/tabs"/>
Fragment_menu.xml
<ListView
android:id="@+id/ListViewer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@drawable/list_divider"
tools:ignore="MissingConstraints" />
Tabview does not change tab on touch
我发现了一个类似的问题,并添加了部分代码,并在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) {
}
});
我立即为我的英语道歉)。我从一个google找到了一个代码,我把它安装在一个android工作室,但是代码的结果不是我想要的。当我单击选项卡时,控件进入另一个(例如,item1、item2、item3、item4)从 item1 到 item2,但 ListViev 元素保持不变。如何让PageViev元素在点击tab控件后发生变化?
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));
Fragment_home.xml
<com.google.android.material.tabs.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#000000"
tools:ignore="MissingConstraints" />
<androidx.viewpager.widget.ViewPager
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="48dp"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
android:layout_below="@+id/tabs"/>
Fragment_menu.xml
<ListView
android:id="@+id/ListViewer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@drawable/list_divider"
tools:ignore="MissingConstraints" />
Tabview does not change tab on touch
我发现了一个类似的问题,并添加了部分代码,并在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) {
}
});