在Android应用

时间:2016-06-24 14:33:09

标签: android animation fadein fadeout

我正在尝试使图像不断淡入淡出,但它只是淡入淡出一次。 我怎样才能让它不断重复? 这是代码:

Animation fadeIn = new AlphaAnimation(0, 1);
    fadeIn.setDuration(1000);

    Animation fadeOut = new AlphaAnimation(1, 0);
    fadeOut.setStartOffset(1000);
    fadeOut.setDuration(1000);

    AnimationSet animation = new AnimationSet(true);
    animation.addAnimation(fadeIn);
    animation.addAnimation(fadeOut);
    ImageView loading = (ImageView)findViewById(R.id.loading);
    loading.startAnimation(animation);

3 个答案:

答案 0 :(得分:2)

使用Animator,它非常简单:

Animator alphaAnimator = ObjectAnimator.ofFloat(loading, View.ALPHA, 0f, 1f);
alphaAnimator.setDuration(1000);
alphaAnimator.setRepeatMode(ValueAnimator.REVERSE);
alphaAnimator.setRepeatCount(ValueAnimator.INFINITE);
alphaAnimator.start();

答案 1 :(得分:0)

你应该重复你的动画:

animation.setRepeatCount(Animation.INFINITE);

答案 2 :(得分:0)

尝试使用Animation类中的方法setRepeatMode(int repeatMode)