Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android:AnimationListener实现时,动画正在重新播放_Android_Android Animation - Fatal编程技术网

Android:AnimationListener实现时,动画正在重新播放

Android:AnimationListener实现时,动画正在重新播放,android,android-animation,Android,Android Animation,在我的Android应用程序中,我想在另一个视图动画完成后在视图上启动动画。所以我使用了AnimationListener,并使用了onAnimationEnd()的覆盖方法。 但问题是,当第一个视图的动画被设置时,第一个和第二个视图都开始动画。这意味着第一个视图将重复其动画与第二个动画 final Animation anim = AnimationUtils.loadAnimation(Home.this,R.anim.myanimation); anim.setAnimat

在我的Android应用程序中,我想在另一个视图动画完成后在视图上启动动画。所以我使用了AnimationListener,并使用了onAnimationEnd()的覆盖方法。 但问题是,当第一个视图的动画被设置时,第一个和第二个视图都开始动画。这意味着第一个视图将重复其动画与第二个动画

    final Animation anim = AnimationUtils.loadAnimation(Home.this,R.anim.myanimation);
    anim.setAnimationListener(new AnimationListener() {

        @Override
        public void onAnimationStart(Animation animation) {
            // TODO Auto-generated method stub

        }
        @Override
        public void onAnimationEnd(Animation animation) {

                image_2.startAnimation(anim);
            }

                    @Override
        public void onAnimationRepeat(Animation animation) {
            // TODO Auto-generated method stub

        }});
   image_1.startAnimation(anim);
我希望图像_2的动画将在图像_1的动画之后开始。但图像_1不会重复它的动画。动画将按顺序发生。怎么做

我的动画代码如下所示:

     <set xmlns:android="http://schemas.android.com/apk/res/android"   android:interpolator="@android:anim/accelerate_interpolator"    android:fillEnabled="true"  android:fillAfter="true"   android:startOffset="5000">


        <scale android:fromXScale="1.0" android:toXScale="0.0"   android:fromYScale="1.0"    android:toYScale="1.0"      android:pivotX="100%"  android:duration="8000"   />

    </set>


这是因为您需要实现两个侦听器。最初调用image2动画时,动画将发生,在动画侦听器结束后,动画将再次发生,因此动画将发生两次。因此,为两个图像视图设置两个侦听器和两个单独的动画可能会解决您的问题…

这是因为您需要实现两个侦听器。最初调用image2动画时,动画将发生,在动画侦听器结束后,动画将再次发生,因此动画将发生两次。因此,为两个图像视图设置两个侦听器和两个单独的动画可能会解决您的问题…

startAnimation将动画设置为一个视图并启动它。image_2.startAnimation将动画设置为image_2,并为1和2启动动画。在开始第二个动画之前,请使用image_1.setAnimation(null)。开始动画将动画设置为视图并启动它。image_2.startAnimation将动画设置为image_2,并为1和2启动动画。在开始第二个动画之前,请使用image_1.setAnimation(null)