闪烁imageView几秒钟

时间:2016-03-17 05:20:33

标签: android animation imageview splash-screen duration

在我的Android应用程序中,我有一个闪屏,它会使应用程序的徽标闪烁3秒,然后启动登录活动。 这是我的代码:

imgView.postDelayed(new Runnable() {
        @Override
        public void run() {
            final Animation animation = new AlphaAnimation(1, 0);
            animation.setDuration(1000);
            animation.setInterpolator(new LinearInterpolator());
            animation.setRepeatCount(Animation.INFINITE);
            animation.setRepeatMode(Animation.REVERSE);
            imgView.startAnimation(animation);
        }
    }, 3000);
Intent intent = new Intent(SplashscreenActivity.this,LoginActivity.class);
startActivity(intent);

但是图像无限闪烁。如何在3秒后停止闪烁?我提到了一些帖子,但我无法得到确切的答案。

3 个答案:

答案 0 :(得分:4)

您可以尝试

      final Animation animation = new AlphaAnimation(1, 0);
      animation.setDuration(1000);
      animation.setInterpolator(new LinearInterpolator());
      animation.setRepeatCount(Animation.INFINITE);
      animation.setRepeatMode(Animation.REVERSE);
      imgView.startAnimation(animation);

      new Handler().postDelayed(new Runnable() {
          @Override
          public void run() {
              animation .cancel();
              Intent intent = new Intent(SplashscreenActivity.this, LoginActivity.class);
              startActivity(intent);

          }
      }, 3000);

您可以使用 imgView.clearAnimation()代替 animation.cancel();

我希望这会对你有所帮助。感谢

答案 1 :(得分:1)

替换下面的行

animation.setRepeatCount(Animation.INFINITE);

在您的代码

 animation.setRepeatCount(1);

答案 2 :(得分:0)

尝试

animation.setRepeatCount(1);

而不是

animation.setRepeatCount(Animation.INFINITE);