父级以外的animateLayoutChanges?

时间:2014-08-08 23:10:55

标签: android animation

<LinearLayout android:animateLayoutChanges="true" >

    <LinearLayout android:animateLayoutChanges="true" >
            <TextView />
            <TextView />
            <TextView />
    </LinearLayout>


    <LinearLayout android:animateLayoutChanges="true" >
            <EditText />
    </LinearLayout>

</LinearLayout>

我想从上面的子项隐藏中间TextView,而EditText只是跳转到位而不是使用任何动画。

当我在任何这些LinearLayouts孩子上使用 setVisibility(View.GONE); 时,我会得到一个动画,但我想使用动画为第二个布局设置动画。

使用ObjectAnimator

    animation_01 = ObjectAnimator.ofFloat( view, "translationY", 0, -200 );

在动画部分应该像它应该的那样工作,但它下面留下一个空白区域。以编程方式启动的任何类型的动画似乎都搞砸了,所以我想使用那个能够自行运行的动画。

使用同一父级中的子项是不可能的,因为它具有不同的背景颜色等(顶部是标题,您可以隐藏不同的对象并使用按钮再次显示,设置可见性)。

我希望第一个孩子将动画用于第二个孩子但是当我选择隐藏顶部的任何物体时,另一个跟随,但它没有动画。

这可能吗?

现在解决方案!

无论如何,这都是它的一部分。我也可以使用LinearLayout,因为我所做的就是将背景颜色设置为单个对象而不是其父对象。

<LinearLayout>
    <LinearLayout android:animateLayoutChanges="true" > <!-- blue bg -->
        <TextView /> 
        <TextView />
        <TextView />
        <EditText /> <!-- white bg -->
    </LinearLayout>
</LinearLayout>

0 个答案:

没有答案