为什么Transition.captureStartValues和Transition.captureEndValues具有相同的具有相同属性的View?

时间:2016-04-28 12:34:55

标签: android android-transitions activity-transition

我在两个活动之间的共享元素中使用了自定义Transition

我的转换不起作用,因为TransitionValues个参数在两个方法ViewcaptureStartValues中具有相同属性的captureEndValues。因此,一旦起始值和结束值相同,我的过渡就不会有什么作用。

为什么会这样?

2 个答案:

答案 0 :(得分:0)

您必须使用SharedElementCallback设置setEnterSharedElementCallback并覆盖onSharedElementStart和onSharedElementEnd,并在开头和结尾设置滚动。当它反转时,在开始之前调用结束以反转转换。

答案 1 :(得分:0)

就我而言,我想在两个元素的背景可绘制对象之间过渡。 经过大量的挖掘,我最终意识到,传递给onCaptureStartValues方法的视图不是第一个活动的实际视图,而是在第二个活动中由过渡框架向下传递的宗地中创建的视图的表示。 / p>

这是反直观的,但最终使我引向下一篇文章,该文章提供了有关如何实现所追求目标的信息丰富的示例。

https://medium.com/@belokon.roman/custom-transitions-in-android-f8949870bd63

通常,您使用SharedElementCallback将自定义属性注入到过渡对象中。 我真的希望这种行为在将来会有所改观,因为它会让人觉得有点黑。