本文主要是介绍创建Handler对象必须先初始化一个Looper,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
创建Handler对象必须先初始化一个Looper , 否则会出现如下错误:
java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
Activity在被创建的时候,框架会帮我们初始化一个Looper对象,因此在主线程中,我们不必去调用Looper.prepare()去初始化Looper对象。
在子线程里面显示一个Toast,Toast的show操作,需要通过windowmanager的 handler来处理,因此需要手动初始化Looper对象:
Looper.prepare();
Toast.makeText(getApplicationContext(), "备份完成", 1).show();
Looper.loop();
http://my.oschina.net/AlexZhuang/blog/53198
这篇关于创建Handler对象必须先初始化一个Looper的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!