android - 以随机时间间隔淡入/淡出

标签 android android-animation android-view

我有一个 ImageButton,我想让它随机淡入并在一段时间后淡出。

我该怎么做?

用线程?有服务吗?与其他东西?

抱歉,如果这是一个非常新手的问题。谢谢

最佳答案

这将以 1-5 秒的随机间隔淡入/淡出 imageButton

private boolean fadeIn = false;
private final Random rand = new Random();

...

final Handler handler = new Handler(Looper.getMainLooper());
final Runnable runnable = new Runnable() {
    @Override
    public void run() {
      imageButton.animate().alpha(fadeIn ? 1.0f : 0.0f).setDuration(500).withEndAction(new Runnable() {
          @Override
          public void run() {
              fadeIn = !fadeIn;
          }
      });
      handler.postDelayed(this, randInt(1000, 5000));
    }
};
handler.post(runnable);

...

public int randInt(int min, int max) {
    return rand.nextInt((max - min) + 1) + min;
}

@Override
protected void onDestroy() {
    handler.removeCallbacks(runnable);
    super.onDestroy();
}

关于android - 以随机时间间隔淡入/淡出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43188033/

相关文章:

java - 动画 Android Ring Shape 的扫角

android - 将 View 动画转换到屏幕边缘

android - Tabhost-在标签页中设置徽章位置 Android

java - 如何使用java打印android中进程返回的数据

android - SwipeRefreshLayout 与 Actionbar 叠加,动画在 actionbar 后面

android - android 的 BaseAdapter notifyDataSetChanged 方法如何工作?

android - 替换 View 之间的共享元素转换

java - 通过游标从列中获取值

java - 在Android中将数据从View类传递到Activity类

android - 如何在android中检索新拍摄照片的图像路径?