我正在开发一个Android应用程序。我在选项卡导航模式下有一个actionbar,还有三个选项卡调用frameview容器中要替换的片段。
我的问题是:如果用户在一个选项卡中生成一个back back,然后切换到另一个选项卡,如果在此状态下按下back按钮,则弹出backback,但选项卡不会更改,这会导致重叠片段(属于tab1的backbackback片段被弹出/添加,但tab2仍处于选中状态,其片段也是如此)。
有没有办法让actionbar标签对back按钮做出反应,使其与片段backback并行?

最佳答案

我通过在backbackback中添加我在addBackStack("MainTab");中选择的名称(TabListener)的选项卡来解决这个问题,然后重写活动中的onBackPressed()方法,以识别在弹出backbackback时选项卡何时将更改(通过获取顶部BackStackEntry的名称),并相应地使用actionBar.setSelectedNavigationItem(position)

07-24 15:57