android.view.ViewRoot$CalledFromWrongThreadException 异常的解决方案
来源:互联网 发布:在手机淘宝上开店步骤 编辑:程序博客网 时间:2024/05/20 18:43
在android平台下,进行多线程编程时,经常需要在主线程之外的一个单独的线程中进行某些处理,然后更新用户界面显示。但是,在主线线程之外的线程中直接更新页面显示的问题是:系统会报这个异常,android.view.viewroot$calledfromwrongthreadexception: only the original thread that created a view hierarchy can touch its views. (只有原始创建这个视图层次(view hierachy)的线程才能修改它的视图(view)。)。
也就是说必须在程序的主线程(也就是ui线程)中进行更新界面显示的工作。可以采用下面的方法之一来解决:
解决方案1:在activity.oncreate(bundle savedinstancestate)中创建一个handler类的实例, 在这个handler实例的handlemessage回调函数中调用更新界面显示的函数。例如:
在其它的函数中,利用 send族或post族函数向这个h发送或邮寄消息即可。
解决方案2:利用activity.runonuithread(runnable)
把更新ui的代码创建在runnable中,然后在需要更新ui时,把这个runnable对象传给activity.runonuithread(runnable)。 这样runnable对像就能在ui程序中被调用。
- android.view.ViewRoot$CalledFromWrongThreadException 异常的解决方案
- 发生android.view.ViewRoot$CalledFromWrongThreadException异常的解决方案
- 发生android.view.ViewRoot$CalledFromWrongThreadException异常的解决方案
- 发生android.view.ViewRoot$CalledFromWrongThreadException异常的解决方案
- android.view.ViewRoot$CalledFromWrongThreadException 异常的解决
- Android编程中,发生android.view.ViewRoot$CalledFromWrongThreadException异常的解决方案
- Android编程中,发生android.view.ViewRoot$CalledFromWrongThreadException异常的解决方案
- android.view.ViewRoot$CalledFromWrongThreadException 异常的解决方案 * 更新时间: 2011-07-21
- android.view.ViewRoot$CalledFromWrongThreadException 异常的解决方案Activity类runOnUiThread方法
- android 异常处理:android.view.viewroot$calledfromwrongthreadexception
- Android--android.view.ViewRoot$CalledFromWrongThreadException异常解决
- 报异常:android.view.ViewRoot$CalledFromWrongThreadException
- 关于android.view.ViewRoot$CalledFromWrongThreadException 异常
- android.view.ViewRoot$CalledFromWrongThreadException
- android.view.ViewRoot$CalledFromWrongThreadException
- 子线程更新UI会发生android.view.ViewRoot$CalledFromWrongThreadException异常的解决方法
- 子线程更新UI会发生android.view.ViewRoot$CalledFromWrongThreadException异常的解决方法
- 子线程更新UI会发生android.view.ViewRoot$CalledFromWrongThreadException异常的解决方法 .
- Qt教程一 —— 共十四步
- 工厂方法(Factory Method)之追根究底
- cocos2d实现画笔功能及常用的绘制函数
- Jquery插件珍藏
- 以查找表取代switch...case
- android.view.ViewRoot$CalledFromWrongThreadException 异常的解决方案
- Z26上的仿射密码体制
- js实现自动生成日期calendar.js
- zoj2478
- mini2440 触摸屏调试程序记录
- 翻译:sql中如何删除重复的项
- CE游戏修改器制作游戏修改器傻瓜教程
- 【jquery】jquery实现回旋滚动效果
- c++实现银行家算法