繁体   English   中英

使用 Android Navigation 组件的深层链接和动画

[英]Deep link and animation using Android Navigation component

我正在尝试实现忘记密码流程。 我想做的是在应用程序内处理收到的电子邮件,其中包含指向忘记密码网页的链接。

使用导航组件,我创建了一个深层链接,它打开了正确的片段(带有密码字段的片段)。 所以我可以更改密码。 单击返回,我返回到登录屏幕,这是我导航图的起点。

除了动画之外,一切都按预期工作。 当我在目的地之间创建一个动作时,我可以分配进入/退出/popenter/popexit动画,但是使用深层链接我不会创建任何动作,所以当我推回时,我到达了预期的片段但没有动画玩过。

我试图对代码进行一些操作,但没有结果,而且我在文档中找不到任何可能的解决方案。

我尝试在导航图中创建一些操作(右键单击目的地有 4 个不同的选项:

  • 到目的地(最常见也是我经常使用的)
  • 自我(我不明白这样做的目的)
  • 返回源头(我不明白这样做的目的)
  • 全球的

他们似乎都没有解决我的问题。 想法? 提前致谢。

您可以在 NavController 中找到

public void navigate(@NonNull Uri deepLink, @Nullable NavOptions navOptions) {
    navigate(deepLink, navOptions, null);
}

在 NavOptions 中,以与动作相同的方式设置动画:

val navOptions =
    NavOptions.Builder()
        .setPopUpTo(
            R.id.nav_graph_main,
            false
        )
        .setEnterAnim(R.anim.slide_in_right)
        .setExitAnim(R.anim.slide_out_left)
        .setPopEnterAnim(R.anim.slide_in_left)
        .setPopExitAnim(R.anim.slide_out_right)
        .build()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM