Android 线程监控以及线程刷新主UI的方法
2014-04-09 20:32
549 查看
1、在Activity主UI中开新线程:
new Thread(new Runnable() { @Override public void run() { while(true) { //获取需要监控的值 //若值有变化,则执行相应处理程序(如刷新主UI线程) } try{ Thread.sleep(2000); //线程运行的频率,单位是毫秒(0.001秒) }catch (InterruptedException e){ e.printStackTrace(); } } } }).start();
2、监控到值的变化之后,如果直接在线程中更改主UI线程,会出错。
提示是:“Android中不能在子线程中刷新UI线程”
解决方法:用 Activity.runOnUiThread,它是Handle的特殊情况,便于处理这类问题代码如下:
Activity.this.runOnUiThread(new Runnable() { @Override public void run() { // 更新UI的操作代码 } });
注:
1、其中Activity是指主UI所在的Activity的名称,也就是指明要操作哪一个UI。
2、将这段代码直接加到Thread的处理程序中就行了。
参考资料:http://blog.163.com/menxu_work/blog/static/20777441920125311250187/
Over
相关文章推荐
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- GUI - Web前端开发框架
- 解決Linux下Android开发真机调试设备不被识别问题
- [Android]在代码里运行另一个程序的方法
- [软件咨询]WPS2012正式版已发布 金山Office移动版4.0发布
- Android笔记-Linux Kernel Ftrace (Function Trace)解析
- 为Yahoo! UI Extensions Grid增加内置的可编辑器
- android USB如何修改VID具体实现
- Android增量升级的方法和原理详细介绍
- Android Mouse实现过程详细笔记
- 深入Android Browser配置管理的详解
- Android Mms之:深入理解对话列表管理
- 在IE 浏览器中使用 jquery的fadeIn() 效果 英文字符字体加粗
- UI Events 用户界面事件
- ASP.NET线程相关配置
- 基于jQuery UI CSS Framework开发Widget的经验
- jquery ui 1.7 ui.tabs 动态添加与关闭(按钮关闭+双击关闭)