java - 为什么button.setText()显示错误

标签 java android function

我创建了一个每 1 秒调用一次的函数,并且在我编写的函数内

myButton.setText("Stop");

现在,如果没有该代码,一切都可以正常工作,但是每当我编写此代码时,我进行测试的移动设备都会显示消息“应用程序已停止工作” 我已经寻找解决方案 3 天了,我们将不胜感激!

这是我的代码

check_time = new TimerTask() {
@Override
                        public void run() {

                                myButton.setText("Stop");

                            Calendar lo_Calender = Calendar.getInstance();
                            int current_h = lo_Calender.get(Calendar.HOUR);
                            int current_m = lo_Calender.get(Calendar.MINUTE);
                            if (H_toWake == current_h && M_toWake == current_m) {
                                out.println("ring");

                                alarm();

                                //return;
                            } else {
                                out.println("no ring!");
                            }
                        }
                    };
                    time.schedule(check_time, 0, 1000);
}

最佳答案

您无法从后台线程触摸 UI。使用AsyncTask http://developer.android.com/reference/android/os/AsyncTask.html

关于java - 为什么button.setText()显示错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30948919/

相关文章:

java - Android Webview 不适用于 Android 4.4

android - 当使用 getDefaultSharedPreferences 和 getSharedPreferences

android - 从 android 的 Intent 中获取值

JavaScript 函数只影响带有类的第一个 div

javascript - 按钮点击结果: "' Function' is not defined"in HTML

java - KeyListener 根本不起作用,但我的代码在我 friend 的计算机上运行良好

java - Spring Boot 应用程序无法使用 JspTagLib 和 Freemarker 找到 security.tld

java - hibernate:与未映射实体的关联

sql-server-2008 - 无法解决排序规则冲突

android - 如何从Android网站中提取元标签?