Android Can't create handler inside thread that has not called Looper.prepare()错误解决方法
Error:Can't create handler inside thread that has not called Looper.prepare()
原代码:
//利用Handler消息传递机制 final Handler myHandler = new Handler(MainActivity.this.getMainLooper()){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); if (msg.what == 0x123){ //置于此处有问题 (初步估计是线程间问题) Toast toast = Toast.makeText(MainActivity.this, "祝您旅途愉快!", Toast.LENGTH_LONG); toast.show(); } } }; //发送空消息 myHandler.sendEmptyMessage(0x123);
原因是此Handler没有Looper。主进程中有Looper,Context.getMainLooper()再看Handler的实例化时是可以指定Looper,最后代码如下
//利用Handler消息传递机制 final Handler myHandler = new Handler(MainActivity.this.getMainLooper()){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); if (msg.what == 0x123){ //置于此处有问题 (初步估计是线程间问题) Toast toast = Toast.makeText(MainActivity.this, "祝您旅途愉快!", Toast.LENGTH_LONG); toast.show(); } } }; //发送空消息 myHandler.sendEmptyMessage(0x123);
猜您可能还喜欢
- Android avax.net.ssl.SSLPeerUnverifiedException: No peer certificate 解决方法(httpClient支持HTTPS的访问方式)(2792)
- Android进阶(二)https请求No peer certificate的解决方法.(1548)
- Android进阶(一)几种网络请求方式详解(1130)
- Android几种邮件发送代码(994)
- AndRoid解决ArrayList的Add总是添加相同值的问题(966)
- Android Can't create handler inside thread that has not called Looper.prepare()错误解决方法(946)
- 响应式布局和自适应布局的区别(362)
评论列表
发表评论
文章分类
文章归档
阅读排行
- 1. Windows Server 2008 R2永久激活及Chew-WGA v0.9下载(12644)
- 2.Visual Studio 2017中安装visualSVN及使用详解(4838)
- 3.完美解决iis下JWplayer提示Error loading media: File could not be played错误(3706)
- 4.asp.net mvc+jquery easyui开发基础(一)模块首页及增加、修改、删除模块实现(2930)
- 5.Android avax.net.ssl.SSLPeerUnverifiedException: No peer certificate 解决方法(httpClient支持HTTPS的访问方式)(2792)
- 6..Net Mvc中使用Jquery EasyUI控件讲解(一)表格控件datagrid使用介绍(2637)
- 7.asp.net mvc+jquery easyui开发实战教程之网站后台管理系统开发(三)登录模块开发(2577)
- 8.asp.net mvc+jquery easyui开发实战教程之网站后台管理系统开发(七)权限管理模块之系统菜单动态生成(2541)
- 9. asp.net mvc+jquery easyui开发实战教程之网站后台管理系统开发(六)权限管理模块之初始数据准备(2191)
- 10.asp.net mvc+jquery easyui开发实战教程之网站后台管理系统开发(八)权限管理模块之权限管理实现(2158)