无法更改动画视图的z顺序

时间:2014-06-17 07:20:57

标签: android animation view z-order

我已经尝试了几个小时解决这个问题,但我完全不知道该怎么做。

我有LinearLayoutRelativeLayout个,每个都有相同的高度。在动画开始之前,底部的可见性“消失”,我希望它能够“滑出”前一个onClick。幻灯片完美无缺,但无论我做什么,动画视图总是在另一个上面。因为看起来底部应该是“滑出”,这不是我想要实现的效果。

我的动画如下:

<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="1000"
    android:fromYDelta="-100%"
    android:interpolator="@android:anim/linear_interpolator"
    android:toYDelta="0"
    />

我已经尝试使用未设置动画的视图执行view.bringToFront(),并且应该只停留在动画视图之上。但结果是非动画视图显示为底部视图。

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

这在布局中受支持,例如相对布局和framelayout,其中支持子视图的z-index放置。你可以尝试:

view.bringToFront(); 

来自文档的说明:更改树中视图的z顺序,因此它位于其他同级视图之上。

您也可以尝试:

bringChildToFront(View child)

更改孩子的z顺序,使其超越所有其他孩子。

这些方法会更改视图树中的子视图。适当的地方就是动画的animationEnded方法。