【问题标题】:How to have TopAppBar navigate back to the previous screen in Jetpack Compose?如何让 TopAppBar 导航回 Jetpack Compose 中的上一个屏幕?
【发布时间】:2022-12-04 20:28:35
【问题描述】:

MainActivity 中,我使用这些代码导航到 RecordActivity

ElevatedButton(
    onClick = { mContext.startActivity(Intent(mContext, RecordActivity::class.java)) },
) {}

RecordActivity中,我想使用下面的代码导航回MainActivity

val navController = rememberNavController()
TopAppBar(
    title = {Text(text = "History Records")},
    navigationIcon = {
        IconButton(onClick = { navController.popBackStack() }) {
            Icon(Icons.Filled.ArrowBack, "backIcon")
        }
    },
)

但是当我按下back按钮时没有效果。 我必须使用NavControllerNavHost吗?我是否必须为 NavHost 构建路线,即使我只有两个屏幕可以导航?而且我不需要home page 中的导航栏。那么有没有更简单的方法来实现简单的需求呢?

【问题讨论】:

    标签: kotlin composable


    【解决方案1】:

    我有同样的问题,navController.navigateUp 也不起作用,所以我在文档中找到的解决方法是使用 finish() 结束活动。

    【讨论】:

      猜你喜欢
      • 2023-01-24
      • 2023-03-28
      • 1970-01-01
      • 2022-10-23
      • 1970-01-01
      • 2022-10-22
      • 1970-01-01
      • 1970-01-01
      • 2021-06-08
      相关资源
      最近更新 更多