1

我有一个安卓应用程序。使用案例如下

  1. Fromactivity A可以导航到activity BviastartActivity()并且activity A仍在“堆栈”上(A 未完成)。

  2. Activity B 是 google 的子类MapActivity

  3. 在按下 BACK 按钮时,导航应该是从 B 到 A。

上述用例在我升级到 Android 4.1.1 之前工作正常(从 2.3.3 到 4.0.x 工作正常)。

在我目前的 4.1.1(Samsung S3) 上,“BACK”按钮通常不起作用。当我按下 BACK 按钮时,按钮亮起但没有执行任何操作。

我什至重写了该OnPressBack()方法并将 Toast 消息作为标志放置。但看起来OnPressBack()通常不会触发。有时它会起作用,但大多数时候它不起作用(转到上一个活动 A)。

而且我还发现返回按钮问题只发生在“MapActivity”的子类中。

任何线索都会有所帮助。谢谢...

4

1 回答 1

0

如果您使用新的导航组件,您需要确保包含您的 navController 的活动覆盖 onSupportNavigateUp() 函数:

override fun onSupportNavigateUp() = findNavController(R.id.nav_host_fragment).navigateUp()
于 2020-02-20T23:04:47.390 回答