Java 如何设置倒计时时间格式
我使用Java 如何设置倒计时时间格式,java,android,handler,runnable,countdowntimer,Java,Android,Handler,Runnable,Countdowntimer,我使用runnable()在游戏中设置倒计时 设置iint cd=30 这就是运行它的方法 final Handler mHandler = new Handler(); final Runnable mUpdateTimeTasks = new Runnable() { public void run() { countdowntext.setText(String.valueOf(cd)); cd -=1; if(cd < 1
runnable()
在游戏中设置倒计时
设置iint cd=30代码>
这就是运行它的方法
final Handler mHandler = new Handler();
final Runnable mUpdateTimeTasks = new Runnable() {
public void run() {
countdowntext.setText(String.valueOf(cd));
cd -=1;
if(cd < 10) {
countdowntext.setTextColor(Color.RED);
}
if(cd == 0) {
focus.stop();
}
};
// run this in a method.
mHandler.postDelayed(mUpdateTimeTasks, cd);
}
final Handler mHandler=new Handler();
最终可运行mUpdateTimeTasks=new Runnable(){
公开募捐{
countdowntext.setText(String.valueOf(cd));
cd-=1;
如果(cd<10){
countdowntext.setTextColor(Color.RED);
}
如果(cd==0){
聚焦。停止();
}
};
//在一个方法中运行这个。
mHandler.postDelayed(mUpdateTimeTasks,cd);
}
代码运行得很好,但问题在于Condown计时器运行得太快,我只是想知道如何使int cd=1=1秒,所以cd=30=30秒
有人能帮我吗
我只是想知道如何使int cd=1=1秒,所以cd=30=30
第二
然后您应该使用mHandler.postDelayed(mUpdateTimeTasks,1000)
final Runnable mUpdateTimeTasks=new Runnable(){
公开募捐{
countdowntext.setText(String.valueOf(cd));
cd-=1;
如果(cd<10){
countdowntext.setTextColor(Color.RED);
}
如果(cd==0){
聚焦。停止();
mHandler.removaCallbacks(空);
返回;
}
mHandler.postDelayed(本,1000)
};
这不会给出精确的30秒,但是非常接近它
在mHandler.postDelayed(mUpdateTimeTasks,cd);cd为毫秒
您应该从以下位置更改代码:
final Handler mHandler = new Handler();
最终可运行mUpdateTimeTasks=new Runnable(){
public void run(){
countdowntext.setText(String.valueOf(cd));
cd-=1;
如果(cd<10){
countdowntext.setTextColor(Color.RED);
}
如果(cd==0){
聚焦。停止();
}
};
//在一个方法中运行这个。
mHandler.postDelayed(mUpdateTimeTasks,cd);
}
为此:
final Handler mHandler = new Handler();
final Runnable mUpdateTimeTasks = new Runnable() {
public void run() {
countdowntext.setText(String.valueOf(cd));
cd -=1;
if(cd < 10) {
countdowntext.setTextColor(Color.RED);
}
if(cd == 0) {
focus.stop();
mHandler.removaCallbacks(null);
return();
}
};
// run this in a method.
mHandler.postDelayed(mUpdateTimeTasks, 1000);
}
final Handler mHandler=new Handler();
最终可运行mUpdateTimeTasks=new Runnable(){
公开募捐{
countdowntext.setText(String.valueOf(cd));
cd-=1;
如果(cd<10){
countdowntext.setTextColor(Color.RED);
}
如果(cd==0){
聚焦。停止();
mHandler.removaCallbacks(空);
return();
}
};
//在一个方法中运行这个。
mHandler.postDelayed(mUpdateTimeTasks,1000);
}
1000表示在1秒(1000/1000秒)后检查Runnable mUpdateTimeTasks方法
public void run() {
countdowntext.setText(String.valueOf(cd));
cd -=1;
if(cd < 10) {
countdowntext.setTextColor(Color.RED);
}
if(cd == 0) {
focus.stop();
}
};
// run this in a method.
mHandler.postDelayed(mUpdateTimeTasks, cd);
}
final Handler mHandler = new Handler();
final Runnable mUpdateTimeTasks = new Runnable() {
public void run() {
countdowntext.setText(String.valueOf(cd));
cd -=1;
if(cd < 10) {
countdowntext.setTextColor(Color.RED);
}
if(cd == 0) {
focus.stop();
mHandler.removaCallbacks(null);
return();
}
};
// run this in a method.
mHandler.postDelayed(mUpdateTimeTasks, 1000);
}