如何在Android中将进入和退出动画添加到特定活动?

How to Add Enter and Exit Animations to Specific Activity in Android?

提问人:SemicolonSpace 提问时间:11/11/2023 最后编辑:SemicolonSpace 更新时间:11/13/2023 访问量:64

问:

假设我有 3 个活动:A、B 和 C。顺序类似于 A 到 B 到 C。我想向 B 添加进入和退出动画。当我从 A 打开 B 时,B 应该有向上滑动的动画。当我从 B 转到 C 时,B 应该有下滑动画。这是我的代码:

在活动 A 中:

startActivity(new Intent(this, B.class));
overridePendingTransition(R.anim.slide_up,  R.anim.no_animation); // working, I can see B is opening with slide up animation

在活动 B 中:

startActivity(new Intent(this, C.class));
overridePendingTransition(R.anim.no_animation,  R.anim.slide_down); // not working, slide down is not applied to B

我还尝试了在 B 的主题 XML 文件中设置窗口进入和退出动画。但它不起作用。

有什么解决办法吗?

Android XML 安卓工作室

评论

0赞 Harshali 11/11/2023
这个如何应用幻灯片动画在-两个活动-in-android中回答你的问题吗?

答:

0赞 Harshali 11/13/2023 #1

您应该传递 0no_animation

正如 Document 所说,

参数:

  • enterAnim – 用于传入活动的动画资源的资源 ID。使用 0 表示无动画。
  • exitAnim – 要用于传出活动的动画资源的资源 ID。使用 0 表示无动画。

尝试在参数中传递 0 而不是 。它可能会显示 的 Slide-Down 动画。R.anim.no_animationActivity B

startActivity(new Intent(this, C.class));
overridePendingTransition(0, R.anim.slide_down);
0赞 Shreyas Sparrow 11/13/2023 #2

我们可以通过导航组件使用活动导航。在导航组件中,我们可以定义进入和退出动画。请检查可能性。

评论

0赞 SemicolonSpace 11/14/2023
导航组件用于片段。