【问题标题】:Jetpack Navigation: When navigating between fragments, how can I use the same animation as when launching a new activity?Jetpack Navigation:在 Fragment 之间导航时,如何使用与启动新 Activity 时相同的动画?
【发布时间】:2020-10-17 17:55:49
【问题描述】:
我正在构建一个基于 Jetpack Navigation 的应用程序。我们的 UX 设计师要求在某些情况下,在 Android 启动新活动时使用的片段之间转换时使用相同的动画。
有没有我可以使用的设置?或者这是我可以通过 R.anim.something 访问并在我的导航图中使用的默认动画?它是否在我可以复制的 AOSP 源代码中定义?这是否因 OEM 而异?
【问题讨论】:
标签:
android
android-animation
android-architecture-navigation
android-jetpack-navigation
【解决方案1】:
根据this issue,这是不可能的:
请考虑在 Android R 上添加官方 API 以获取用于过渡的动画(并为其配备 CTS)。只有使用它,它总是能够很好地模仿它。
原因是不同 OEM 之间的活动之间的动画可能不同,而且它甚至不必是静态的。我见过一些允许用户在活动之间选择动画的 ROM。
因此,没有用于检索默认活动动画的 API,也不是您可以在应用中静态包含的内容,因为每个 OEM 可能有不同的动画,即使在特定设备中,不同的 OEM 特定用户设置也可能会发生变化默认动画是什么。