Java 文本倒计时
我想创建一个倒计时,其中初始数字由用户给出。我创建了这个应用程序,但当应用程序开始关闭时。我不明白错误是什么,因为在编译过程中没有错误。我做错了什么? 代码如下:Java 文本倒计时,java,android,countdowntimer,Java,Android,Countdowntimer,我想创建一个倒计时,其中初始数字由用户给出。我创建了这个应用程序,但当应用程序开始关闭时。我不明白错误是什么,因为在编译过程中没有错误。我做错了什么? 代码如下: public class Main2Activity extends AppCompatActivity { Button bstart, bStopReset; EditText editTimer; CountDownTimer timer; @Override protected void onCreate(Bundle
public class Main2Activity extends AppCompatActivity {
Button bstart, bStopReset;
EditText editTimer;
CountDownTimer timer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
editTimer = (EditText) findViewById(R.id.contatore);
bstart = (Button) findViewById(R.id.start);
bStopReset = (Button) findViewById(R.id.stop_reset);
}
String valore = editTimer.getText().toString();
int ValoreIntero = Integer.parseInt(valore);
public void startOnClick(View view) {
timer = new CountDownTimer(ValoreIntero, 1000) {
@Override
public void onTick(final long millSecondsLeftToFinish) {
String time = String.valueOf(millSecondsLeftToFinish / 1000);
editTimer.setText(time);
}
@Override
public void onFinish() {
editTimer.setText("Done!");
}
};
timer.start();
}
public void stopOnClick(View view) {
timer.cancel();
editTimer.setText("0");
}
}
xml:
您在初始化活动时设置这两个值,而不是在用户单击开始按钮时:
String valore = editTimer.getText().toString();
int ValoreIntero = Integer.parseInt(valore);
将它们移动到startOnClick方法中,这将修复您遇到的异常。您应该查看logcat的日志,以找出错误的根本原因没有错误计时器工作正常吗?或者您可以使用Log.d(“某物”、“内容”);或System.out.println(“好”);看看logcat。把它放在程序启动时的某个地方或计时器方法中。你检查了ValoreIntero的值吗?
String valore = editTimer.getText().toString();
int ValoreIntero = Integer.parseInt(valore);