Handler.post()解决非主线程更新UI
来源:互联网 发布:如何定制淘宝客app 编辑:程序博客网 时间:2024/06/05 20:12
在非主线程中调用了showMessage方法,结果报错:Can't create handler inside thread that has not called Looper.prepare()
private void showMessage(String msg) { Toast toast = Toast.makeText(getApplicationContext(), msg, Toast.LENGTH_SHORT); toast.setGravity(Gravity.CENTER, 0, 0); toast.show(); }
原来Android中非主线程不能更新UI,Handler.post()方法可以解决这个问题:于是将showMessage方法稍作修改就可以了:
private void showMessage(String msg) { mSg = msg; mHandler.post(new Runnable() { @Override public void run() { Toast toast = Toast.makeText(getApplicationContext(), mSg, Toast.LENGTH_SHORT); toast.setGravity(Gravity.CENTER, 0, 0); toast.show(); } });
- Handler.post()解决非主线程更新UI
- Handler-接受子线程数据更新UI主线程;非主线程通信--HandlerThread
- Handler-接受子线程数据更新UI主线程;非主线程通信--HandlerThread
- Handler更新主线程UI常用方法
- 非UI主线程如何弹出Toast以及Handler.post()流程分析
- android学习记录(十一)在非主线程实现更新ui------------Handler
- Android非主线程更新UI
- 在非Activity(非主线程)中更新UI的办法:(一)Handler+Thread+Activity静态成员变量
- 在非Activity(非主线程)中更新UI的办法:(二)Handler+接口回调
- Handler post()等在子线程中更新主线程的UI的方法使用小汇
- Android子线程更新UI主线程方法之Handler
- Android子线程更新UI主线程方法之Handler
- 子线程用Handler通知主线程更新UI
- 在非主线程是否可以更新UI
- 在Android中,非主线程不能更新UI
- 利用handler.post()更新UI
- 利用handler.post()更新UI
- 在主线程更新UI
- VC中SPIN旋转按钮的使用
- perl novel可变剪接识别(2)
- ios键盘高度
- 新浪微博ios
- 静默安装
- Handler.post()解决非主线程更新UI
- pcDuino U-boot
- 101个鲜为人知的超实用网站
- MyEclipse无法自动编译的解决
- IOS_基础类库之NSBundle
- mssql2008字符串转时间
- jquery tmpl的使用
- 呵呵 “曼哈顿工程”
- Memcache和mysql交互流程操作原理