如何使用Android中的导航控制器以编程方式返回上一个目的地?

Ale*_*289 4 android android-navigation android-jetpack android-architecture-navigation

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

在此处输入图片说明

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

 val changePassword = LoginUsingEmailFragmentDirections.actionToChangePasswordFragment()
Navigation.findNavController(fragmentView).navigate(changePassword)
Run Code Online (Sandbox Code Playgroud)

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

如果我使用使用大量活动的旧方式导航,那么我通常使用 finish()

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

Hus*_*dar 8

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

btn.setOnClickListener{
 Navigation.findNavController(fragmentView).navigateUp()
}
Run Code Online (Sandbox Code Playgroud)