请允许任何人在LogCat中解释此异常

时间:2012-06-28 06:39:03

标签: android android-logcat

06-28 12:07:10.881: E/(930): {total=21 secs, date2=28-06-2012, time2=9:43:09 AM, time1=9:42:48 AM, date1=28-06-2012}
06-28 12:07:11.131: E/testing(930): exception:android.view.ViewRoot$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
06-28 12:07:11.160: E/(930): {total=24 secs, date2=28-06-2012, time2=10:45:02 AM, time1=10:44:38 AM, date1=28-06-2012}
06-28 12:07:11.601: E/testing(930): exception:java.lang.IllegalArgumentException: The observer is null.

4 个答案:

答案 0 :(得分:2)

  • .ViewRoot $ CalledFromWrongThreadException:仅限原始线程 创建视图层次结构可以触及其视图

看起来你正在尝试从非UI线程更新UI元素。

应根据您的需要使用HandlerrunOuUIThread活动功能或Asynctask

答案 1 :(得分:1)

查看在单独的线程中编写的代码并尝试更新应用程序UI。

您需要将该代码放在runOnUiThread的运行方法中。

runOnUiThread(new Runnable() {
     public void run() {
           // COde to update UI.
    }
});

答案 2 :(得分:0)

您正在尝试修改非UI线程的线程上的UI组件。查看runOnUiThread以从非UI线程更新UI组件。

答案 3 :(得分:0)

您可以使用线程,但所有视图和所有与视图相关的API必须从主线程(也称为 UI线程)调用。为此从后台线程中,您需要使用处理程序处理程序是一个将消息发送回UI线程的对象。