Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/188.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android定时器使应用程序崩溃_Android - Fatal编程技术网

android定时器使应用程序崩溃

android定时器使应用程序崩溃,android,Android,我正在尝试创建一个计时器,它会在5秒后执行某些操作 现在,在我的主要活动(我只得到1分)中,我写了这节课: class Reminder { Timer timer; public Reminder(int seconds) { timer = new Timer(); timer.schedule(new RemindTask(), seconds*1000); } class RemindTask extends TimerTask { public void r

我正在尝试创建一个计时器,它会在5秒后执行某些操作

现在,在我的主要活动(我只得到1分)中,我写了这节课:

class Reminder {
Timer timer;

public Reminder(int seconds) {
    timer = new Timer();
    timer.schedule(new RemindTask(), seconds*1000);
}

class RemindTask extends TimerTask {
    public void run() {
        textFeedback.setText("test");
        timer.cancel(); 
    }
}
}

在一个函数(以及我的mainactivity)中,我创建了一个计时器作为新的提醒(5)。
5秒后,应用程序崩溃。

我看不出有什么问题,因为我是在普通的java应用程序中这样做的。

不确定您在哪里初始化了
textfeeback

text反馈.setText(“测试”)无法从计时器任务更新ui。计时器任务在非ui线程上运行。只能在Ui线程上更新Ui

您的选项使用
处理程序
runOnUiThread

注意runOnUiThread是活动类的一种方法。需要活动上下文

更多信息


当类余数为istatiate时,您不知道var TEXTFEEDING,因为您需要传递TEXTFEEDING的owmer

谢谢

这样解决:

         new CountDownTimer(5000, 1000) {

             public void onTick(long millisUntilFinished) {
                 //textFeedback.setText("seconds remaining: " + millisUntilFinished / 1000);
             }

             public void onFinish() {
                 textFeedback.setText("");
             }
          }.start();

请提供您的日志。没有注意到我从另一个线程更新了UI。@user1007522检查发布的链接是否有计时器、处理程序和倒计时的示例