android - 弹出带有图像的倒计时警报(android)

标签 android popup countdown

我正在尝试创建一个倒计时器,该计时器每秒都会弹出并显示不同的图像,因此它会显示“3、2、1、开始”,然后启动不同的 Activity 。我已经尝试了很多方法,但没有任何方法可以工作..如果有人能指出我正确的方向,那就太好了!

package com.practice;

import android.app.Activity;
import android.app.Dialog;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.widget.ImageView;

public class Practice2 extends Activity {

@Override 
public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.main); 

final long delayCount = 1000;
final long delayIncrement = 1000;
final long delayCount1 = 1000;
final long delayIncrement1 = 1000;
final long delayCount2 = 1000;
final long delayIncrement2 = 1000;


final Dialog dialog = new Dialog (Practice2.this,
android.R.style.Theme_Translucent_NoTitleBar_Fullscreen); 
dialog.setTitle("Get ready to play DrawTastic!"); 

final CountDownTimer timer = new CountDownTimer(delayCount, delayIncrement) { 

@Override
public void onTick(long millisUntilFinished) {
// TODO Auto-generated method stub

ImageView three = (ImageView) dialog.findViewById(R.id.iv3); 
three.setImageResource(R.drawable.three); 

}

@Override
public void onFinish() {
// TODO Auto-generated method stub
ImageView two = (ImageView)dialog.findViewById(R.id.iv2); 
two.setImageResource(R.drawable.two); 
timer1.start();
} 

final CountDownTimer timer1 = new CountDownTimer(delayCount1, delayIncrement1) { 

@Override
public void onTick(long millisUntilFinished) {
// TODO Auto-generated method stub
ImageView one = (ImageView) dialog.findViewById(R.id.iv1); 
one.setImageResource(R.drawable.one); 

}

@Override
public void onFinish() {
// TODO Auto-generated method stub
ImageView play = (ImageView) dialog.findViewById(R.id.ivPlay); 
play.setImageResource(R.drawable.play); 
timer2.start();
} 

final CountDownTimer timer2 = new CountDownTimer(delayCount2, delayIncrement2) { 

@Override
public void onTick(long millisUntilFinished) {
// TODO Auto-generated method stub
ImageView play = (ImageView) dialog.findViewById(R.id.ivPlay); 
play.setImageResource(R.drawable.play); 

}

@Override
public void onFinish() {
// TODO Auto-generated method stub
ImageView play = (ImageView) dialog.findViewById(R.id.ivPlay); 
play.setImageResource(R.drawable.play); 
dialog.dismiss();
}

};
};
};

timer.start();

dialog.show(); 

}
}

最佳答案

利用Handler 。您需要以 1 秒的时间间隔显示 4 个不同的图像。类似的东西 -

new Handler().postDelayed(new Runnable() {
        
        @Override
        public void run() {
            imageView.setBackgroundResource(R.id.nextImage);
        }
    }, 1000);

但是,我建议您使用 TextView,如 API 演示中所示。

转到 API 演示中的 Views->TextSwitcher

关于android - 弹出带有图像的倒计时警报(android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9887214/

相关文章:

android - 在android中为constraintlayout设置透明背景

java - 来自 REST API 的服务器响应格式日期不起作用

Javascript:弹出窗口如何自行关闭?

JavaFX WebView 弹出处理程序未尝试加载页面

javascript - 返回倒数计时器的下一个本地化日期

android - 我不能在 kotlin 中使用 DataBindingUtil.setContentView()

Android Navigation drawer Header 颜色变化

IE8中Javascript弹出窗口的宽度?

javascript - JavaScript 倒计时不起作用

c - 在C中读取和写入文件中的两位数值