如果在 5 秒内没有任何反应,如何让一个动作在 android 内发生?
How to make a action happen in android if nothing happen with in 5 second?
final Handler handler = new Handler();
final Runnable timer = new Runnable() {
@Override
public void run() {
// user too late: increment miss counter
if (++secondmisses >= MISS_LIMIT) {
//TODO miss limit reached
finish(); // close this activity
}
}
};
这是我的可运行计时器,不确定我是否可以在这里找到解决方案
我想让我的 sphero 用 5 秒检测碰撞
if(在 5 秒内发生碰撞)
向上移动,如果他们说没有碰撞,向下移动
下面是我的代码
我不确定我还能做什么
mRobot.drive(0.0f, ROBOT_VELOCITY);
handler.removeCallbacks(timer);
handler.postDelayed(timer, ONE_SECOND);
this.checkcollision(v, 1); // if there is no collision
this.checkcollisoon(v,2); //if there is a collision
请帮忙:)
试试 CountDownTimer
。像这样:
long duration = 12345;
long ticksInterval = 1000; // 1 second in millis
new CountDownTimer(duration, ticksInterval){
public void onTick(long remaining) {
// Do something each ticksInterval millis
}
public void onFinish() {
// Do something after duration millis
}
}.start();
当您的应用中发生某些事情时,您可以设置一个非静态 class 布尔值并在 onFinish()
中对其进行测试,以查看在计时器期间是否发生了某些事情。
final Handler handler = new Handler();
final Runnable timer = new Runnable() {
@Override
public void run() {
// user too late: increment miss counter
if (++secondmisses >= MISS_LIMIT) {
//TODO miss limit reached
finish(); // close this activity
}
}
};
这是我的可运行计时器,不确定我是否可以在这里找到解决方案
我想让我的 sphero 用 5 秒检测碰撞
if(在 5 秒内发生碰撞) 向上移动,如果他们说没有碰撞,向下移动
下面是我的代码
我不确定我还能做什么
mRobot.drive(0.0f, ROBOT_VELOCITY);
handler.removeCallbacks(timer);
handler.postDelayed(timer, ONE_SECOND);
this.checkcollision(v, 1); // if there is no collision
this.checkcollisoon(v,2); //if there is a collision
请帮忙:)
试试 CountDownTimer
。像这样:
long duration = 12345;
long ticksInterval = 1000; // 1 second in millis
new CountDownTimer(duration, ticksInterval){
public void onTick(long remaining) {
// Do something each ticksInterval millis
}
public void onFinish() {
// Do something after duration millis
}
}.start();
当您的应用中发生某些事情时,您可以设置一个非静态 class 布尔值并在 onFinish()
中对其进行测试,以查看在计时器期间是否发生了某些事情。