动画对象可以共享和重用吗?

时间:2018-06-02 05:46:54

标签: android animation

请考虑以下事项:

Animation foo = AnimationUtils.loadAnimation(parentActivity, R.anim.scale_up);

将相应的XML资源定义为

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
     android:interpolator="@android:anim/accelerate_decelerate_interpolator"
     android:fillBefore="true"
     android:fillAfter="false"
     android:fillEnabled="true">

    <scale
        android:fromXScale="0.00"
        android:fromYScale="0.00"
        android:toXScale="1.00"
        android:toYScale="1.00"
        android:pivotX="50%"
        android:pivotY="50%"
        android:duration="50"
        android:repeatCount="0"/>

</set>

可以将以这种方式创建的动画对象Animation foo应用于多个视图对象吗?

view1.startAnimation(foo);
view2.startAnimation(foo);
view3.startAnimation(foo);

view1.clearAnimation();时会发生什么?其他观点的动画也停止了吗?

Animation foo对象是存储状态的东西,因此不应该应用于多个视图(例如弹性按钮效果)

或者它只是一个对象,它包含已解析的XML文件的一些静态定义,并且可以在多次重用之前轻松创建一次?

0 个答案:

没有答案