android - 如何使用 Android 中的导航 Controller 以编程方式返回到以前的目的地?

标签 android android-navigation android-jetpack android-architecture-navigation

我有如下图所示的登录过程:

enter image description here

用户将使用以下代码从登录屏幕(中间)导航到更改密码屏幕(右侧):

 val changePassword = LoginUsingEmailFragmentDirections.actionToChangePasswordFragment()
Navigation.findNavController(fragmentView).navigate(changePassword)

我想如果用户成功更改密码,我想让用户以编程方式返回登录屏幕。

如果我在很多 Activity 中使用旧的导航方式,那么我通常使用 finish()

我有点困惑什么是实现这一目标的正确方法。我是否需要先在图中采取行动,然后使用与上面类似的代码?或者有没有更方便或更好的方法来做到这一点?

最佳答案

您可以在按钮点击监听器上导航到登录屏幕,如下所示:

btn.setOnClickListener{
 Navigation.findNavController(fragmentView).navigateUp()
}

关于android - 如何使用 Android 中的导航 Controller 以编程方式返回到以前的目的地?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55173747/

相关文章:

android - 使用 Jetpack Compose 对文本进行内部填充

android - 当用户在 Android 上打开任何应用程序时添加 Activity/fragment

android - 启动 Android Studio 时出错

java - 重试 http 连接

android - Kotlin Android Jetpack 在后台 fragment 之间导航

android - 如何防止 BottomSheetDialogFragment 在导航到另一个 fragment 后关闭?

android - LiveData 适用于回收 View ,但 MutableLiveData 不适用。为什么?

android - 使用新的 Android BottomAppBar 实现 Android Jetpack Navigation 组件

android - 无法在我的 Android 项目中设置 Chaquopy,注释问题

android - 从 compose 导航到 Fragment