使用 Activity 转换时,视图正在转换 individually/separately

Views are transitioning individually/separately when using Activity Transitions

我正在尝试为我的 Android 应用程序的 Activity 之一创建向上滑动效果,类似于 Gmail 应用程序的撰写 Activity 输入 animation/transition,虽然没有以前活动的退出动画。根据我的研究,有两种方法可以实现这一点:

  1. overridePendingTransition(R.anim.slide_in_bottom, R.anim.stay) 在 Activity A 中开始 Activity() 之后,overridePendingTransition(R.anim.stay, R.anim.slide_out_bottom) 在 Activity B 中完成 () 之后。问题使用这种方法:我需要为 Activity B 中的输入 animation/transition 设置监听器以执行进一步的动画,我 not 想使用某种onCreate() 中的猜测延迟。除此之外,这种方法完美无缺。

  2. 使用 "new"(实际上不再)Activity 转换 API 为 [ 的进入和退出转换执行 android.transition.Slide =36=] B 将幻灯片边缘设置为底部。这种方法的问题:This 使用这种方法时引入了奇怪的分离/单独的视图转换。 (这里没有粘贴任何代码,因为没有必要,我使用的是 xml 中 transitionSet 中的幻灯片或代码中的默认构造函数)

所以我的问题是,有没有办法让我不知道的方法 1 有一个实际的侦听器,或者有没有办法用方法 2 消除这种奇怪的分离,如果是,怎么做?

您可以使用 Otto 为方法 #1 创建侦听器。基本上,这是一个事件总线,它提供了一种机制,您可以使用该机制与应用程序的不同部分进行通信。

将应设置动画的视图放在一个 "Transition Group" 中。