嘿,我遇到了我的程序问题。我想要一个包含计时器内的计时器和退出按钮的布局。我已经成功完成了计时器,但问题出在我认为的退出按钮编码中。
这是我的代码:
package com.MyCompany.MyApp;
import android.app.Activity;
import android.content.Intent;
import android.content.Context;
import android.os.CountDownTimer;
import android.os.Handler;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import android.view.View.OnClickListener;
import android.widget.Button;
import com.MyCompany.MyApp.R;
public class Class1 extends Activity implements OnClickListener
{
Button btn_exit;
Intent i = new Intent(this, Class2.class);
Handler handler;
protected Context context = this;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
handler = new Handler();
setContentView(R.layout.activity_class1);
btn_exit = (Button)findViewById(R.id.btn_exit);
btn_exit.setOnClickListener(this);
final TextView text4 = (TextView) findViewById(R.id.timer);
btn_exit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
new CountDownTimer(45000, 1000) {
public void onTick(long millisUntilFinished) {
text4.setText("Seconds remaining: " + millisUntilFinished / 1000);
}
public void onFinish() {
text4.setText("Time's up!");
new CountDownTimer(3000, 1000) {
public void onTick(long millisUntilFinished) {
}
@Override
public void onFinish() {
Intent intent1 = new Intent(context, Class2.class);
startActivity(intent1);}
}.start();
}
}.start();
}
@Override
public void onClick(View v) {
}
}
当我运行应用程序并观察计时器一直下降到零时,第二个计时器启动并从三个计数器开始倒计时,然后程序完成当前活动并切换到下一个计时器。这一切都很好,但是让我说我运行应用程序,看着计时器停机,但我决定在任何时候点击退出按钮,即使它退出屏幕并完成活动,计时器仍然进入倒计时和切换到Class2。我怎么能阻止它呢?
答案 0 :(得分:0)
你可以做的是创建一个全局布尔变量,例如" ThisActivityExits",在你的点击监听器上你可以改变变量的值,你可以创建和"如果"在你的计时器内停止它。