如何将返回堆栈添加到我的选项卡布局?
How can i add back stack to my tab layout?
在我的项目中,我在选项卡布局中使用了查看页面适配器,但无法将返回堆栈添加到选项卡布局中
如何将返回堆栈添加到我的选项卡布局中
我为这个项目使用了 android studio
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tabLayout=findViewById(R.id.tablayout);
viewPager=findViewById(R.id.viewPager);
ViewPageAdapter adapter =new
ViewPageAdapter(getSupportFragmentManager());
adapter.AddFragment(new BlankFragment(),"first");
adapter.AddFragment(new BlankFragment2(),"second");
adapter.AddFragment(new BlankFragment3(),"third");
viewPager.setAdapter(adapter);
tabLayout.setupWithViewPager(viewPager);
}
需要获取选项卡布局的 backstacks
您可以像这样在 onBackPressed() 方法中处理后退按钮
override fun onBackPressed() {
if(viewPager.currentItem > 0){
viewPager.currentItem = viewPager.currentItem - 1
}else {
super.onBackPressed()
}
}
您能做的最好的事情就是将标签位置保存在列表中
当用户切换标签时。将用户导航到特定选项卡并在他单击返回时从列表中删除元素,直到列表中没有元素。
还要确保您在保存的列表中没有重复的位置,这样用户在按返回时不会转到相同的选项卡。
再说一遍,这不是实现选项卡布局的好方法。用户通常不会期望在单击后退按钮时转到上一个选项卡。他们希望转到上一个屏幕/退出应用程序。
在我的项目中,我在选项卡布局中使用了查看页面适配器,但无法将返回堆栈添加到选项卡布局中
如何将返回堆栈添加到我的选项卡布局中
我为这个项目使用了 android studio
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tabLayout=findViewById(R.id.tablayout);
viewPager=findViewById(R.id.viewPager);
ViewPageAdapter adapter =new
ViewPageAdapter(getSupportFragmentManager());
adapter.AddFragment(new BlankFragment(),"first");
adapter.AddFragment(new BlankFragment2(),"second");
adapter.AddFragment(new BlankFragment3(),"third");
viewPager.setAdapter(adapter);
tabLayout.setupWithViewPager(viewPager);
}
需要获取选项卡布局的 backstacks
您可以像这样在 onBackPressed() 方法中处理后退按钮
override fun onBackPressed() {
if(viewPager.currentItem > 0){
viewPager.currentItem = viewPager.currentItem - 1
}else {
super.onBackPressed()
}
}
您能做的最好的事情就是将标签位置保存在列表中 当用户切换标签时。将用户导航到特定选项卡并在他单击返回时从列表中删除元素,直到列表中没有元素。
还要确保您在保存的列表中没有重复的位置,这样用户在按返回时不会转到相同的选项卡。
再说一遍,这不是实现选项卡布局的好方法。用户通常不会期望在单击后退按钮时转到上一个选项卡。他们希望转到上一个屏幕/退出应用程序。