共享元素转换(前景/背景)问题

时间:2015-09-02 08:19:38

标签: android animation transition z-order shared-element-transition

我想知道是否可以更改共享元素转换的z顺序?看:

我有一个带有图像的布局,可以填满整个屏幕。图像前面是一个文本框,显示图像的标题。如果我点击文本框,则会开始转换到详细信息活动。因此,我实现了一个共享元素转换,其中全屏图像在详细视图中设置为较小版本的自身。下图说明了这种情况。

enter image description here

我现在的问题是,在两个活动中都是文本框,它们位于共享元素图像之上。如果我从概述到详细活动,我会在共享元素转换完成后看到带有数字的圆圈文本框。 我想将带有数字的文本框放在共享元素转换之上,这样我也可以在这个视图元素上做动画。

关于如何解决这个问题的任何想法?

2 个答案:

答案 0 :(得分:2)

如果我没弄错的话,android会通过使用视图的高程来计算哪些视图位于其他视图之上。尝试使用高程(或translationZ值)来决定哪些视图应该在顶部。

答案 1 :(得分:0)

解决方案:ViewGroupTree

解决方案

level 0 : MainConstraint  //(your row)
level 1 : ImageView / Otherlayout
level 2 : TextView

item A::BackgroundImage    : MainConstraint -> ImageView
item B::BackgroundTextView : MainConstraint -> Constraint -> TextView

这样,布局被Z索引顺序弄乱了。 因为ImageView和TextView具有不同的布局层次结构,所以将您的ImageView添加到其他布局中,它将按预期工作! 您必须为每个视图使用相同深度的深度,才能获得预期的调用

我希望不晚;)