07-01 02:01:12.431: WARN/System.err(353): Caused by: java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
07-01 02:01:12.441: WARN/System.err(353): at android.os.Handler.<init>(Handler.java:121)
07-01 02:01:12.452: WARN/System.err(353): at android.widget.SlidingDrawer$SlidingHandler.<init>(SlidingDrawer.java:946)
07-01 02:01:12.461: WARN/System.err(353): at android.widget.SlidingDrawer$SlidingHandler.<init>(SlidingDrawer.java:946)
07-01 02:01:12.461: WARN/System.err(353): at android.widget.SlidingDrawer.<init>(SlidingDrawer.java:121)
07-01 02:01:12.481: WARN/System.err(353): ... 20 more
在报错的方法前加Looper.prepare();
方法末尾加Looper.loop();
分享到:
相关推荐
开一个新线程,引起的异常。1. ANR: application not responding 2.android.view.ViewRoot$...3.java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
当在非UI线程(子线程)中创建`Handler`时,如果没有调用`Looper.prepare()`,程序将抛出异常:“Can't create handler inside thread that has not called Looper.prepare()”。这是因为`Handler`依赖于`Looper`来...
在创建 Handler 对象时,如果不在主线程中创建,而是在子线程中创建,会导致程序崩溃,提示的错误是 Can't create handler inside thread that has not called Looper.prepare()。这是因为子线程中没有调用 Looper....
当创建一个新的Handler实例时,如果在子线程中没有事先调用Looper.prepare()来初始化Looper,会抛出“Can't create handler inside thread that has not called Looper.prepare()”异常。这是因为Handler需要一个...
"Can't create handler inside thread that has not called Looper.prepare()"); } mQueue = mLooper.mQueue; ... } ``` 3. **Message** Message是消息的载体,用于在Handler和Looper之间传递数据。它包含了...
1. 在创建Handler时,如果当前线程没有Looper,会抛出`java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()`。这说明Handler必须在有Looper的线程中使用,例如...
例如,不要在非UI线程中直接操作UI组件,否则会抛出`android.os.NetworkOnMainThreadException`或`java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()`等异常。...