【发布时间】:2012-09-09 06:07:12
【问题描述】:
我刚开始学习创建 Android 应用程序。我想创建一个简单的倒计时计时器,它从编辑文本中获取一个值,但倒计时计时器似乎没有运行。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
countDownTxt = (TextView) findViewById(R.id.countDownView);
intervalTxt = (TextView) findViewById(R.id.intervalText);
findViewById(R.id.startBN).setOnClickListener(
new View.OnClickListener() {
public void onClick(View v) {
int testInt = 30;
//countDownTxt.setText(intervalTxt.getText());
int interval = Integer.parseInt(intervalTxt.getText().toString());
Log.d("buttonpressed", "interval for countdown is " + interval);
cdt = new CountDownTimer(Integer.parseInt(intervalTxt.getText().toString()), 1000) {
public void onTick(long millisUntilFinished) {
Log.d("counttimer1", "haha1");
countDownTxt.setText(""+ millisUntilFinished / 1000);
}
public void onFinish() {
cancel();
}
}.start();
}
}
);
}
特别是,该程序仅在我在 CountDownTimer 的第一个参数“cdt = new CountDownTimer(testInt, 1000)”中输入数值(例如 30000)时才有效
有人可以请教我吗?谢谢!
【问题讨论】:
-
那么,它是否有效?你能告诉你 logcat 吗?为什么不在
new CountDownTimer中重用interval变量的值? -
试试
Long.parseLong(intervalTxt.getText().toString())而不是Integer.parseInt(intervalTxt.getText().toString()) -
嗨,我也试过很久了。它不起作用,logcat 如果我使用一个变量它甚至不会进入 onTick()。
标签: android