Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
具有多个活动的Android NavController备份/备份工具栏和物理后退按钮以不同方式更改抽屉布局导航图标_Android_Navigation Drawer - Fatal编程技术网

具有多个活动的Android NavController备份/备份工具栏和物理后退按钮以不同方式更改抽屉布局导航图标

具有多个活动的Android NavController备份/备份工具栏和物理后退按钮以不同方式更改抽屉布局导航图标,android,navigation-drawer,Android,Navigation Drawer,我已经实现了一个Android应用程序,它使用一个带有NavController的单一活动架构来管理带有抽屉布局的多片段导航。该应用程序还有两个传统的基于活动的导航分支,它们是从遗留开发工作中保留下来的 应用程序在所有方面都可以工作,除了当用户从传统活动分支之一返回到主活动时。当用户使用工具栏上的“备份/备份”按钮返回到主活动(包含多个片段)时,导航抽屉将显示正确的导航图标,该图标设计为“主页”按钮。但是,当用户使用设备的物理后退按钮导航回主活动时,导航抽屉会在导航抽屉中显示基于活动的启动图标,

我已经实现了一个Android应用程序,它使用一个带有NavController的单一活动架构来管理带有抽屉布局的多片段导航。该应用程序还有两个传统的基于活动的导航分支,它们是从遗留开发工作中保留下来的

应用程序在所有方面都可以工作,除了当用户从传统活动分支之一返回到主活动时。当用户使用工具栏上的“备份/备份”按钮返回到主活动(包含多个片段)时,导航抽屉将显示正确的导航图标,该图标设计为“主页”按钮。但是,当用户使用设备的物理后退按钮导航回主活动时,导航抽屉会在导航抽屉中显示基于活动的启动图标,而不是首选的主按钮

我已经用Intent和StartActivity指令重写了传统活动中的onBackPressed()方法。当设备上使用物理后退按钮时,这会将导航抽屉放回主页按钮

我不喜欢使用onBackPressed()方法,我正在寻求有关我所描述的两个用例之间存在差异的原因的建议