当前位置: 首页 > news >正文

网站设计主题选择国家合同模板网站

网站设计主题选择,国家合同模板网站,wordpress主题代码高亮,thinkphp和wordpress区别Handler 定义与作用 主要接受子线程发送的数据#xff0c; 并用此数据配合主线程更新UI。 解释#xff1a;当应用程序启动时#xff0c;Android 首先会开启一个主线程#xff08;也就是UI线程#xff09;#xff0c;主线程为管理界面中的UI控件#xff0c;进行事件分…Handler 定义与作用 主要接受子线程发送的数据 并用此数据配合主线程更新UI。 解释当应用程序启动时Android 首先会开启一个主线程也就是UI线程主线程为管理界面中的UI控件进行事件分发比如说你要是点击一个 ButtonAndroid 会分发事件到 Button 上来响应你的操作。如果此时需要一个耗时的操作例如: 联网读取数据或者读取本地较大的一个文件的时候如果这些操作放在主线程中界面会出现假死现象如果5秒钟还没有完成的话会收到 Android 系统的一个错误提示 强制关闭。这个时候我们需要把这些耗时的操作放在一个子线程中因为子线程涉及到UI更新Android 主线程是线程不安全的也就是说更新UI只能在主线程中更新子线程中操作是危险的。Handler 就用来解决这个复杂的问题 由于 Handler 运行在主线程中(UI线程中) 它与子线程可以通过 Message 对象来传递数据这个时候 Handler 就承担着接受子线程传递的 Message 或者 Runnable 对象 (里面包含数据)把这些消息放入主线程队列中配合主线程进行更新UI。 Handler 的特点 Handler 可以分发 Message 对象和 Runnable 对象到主线程中 每个 Handler 实例都会绑定到创建他的线程中(一般是位于主线程)它有两个作用 1. 安排 Message 或 Runnable 在某个主线程中某个地方执行 2. 安排一个动作在不同的线程中执行。 Handler 中分发消息的一些方法 post(Runnable)postAtTime(Runnablelong)postDelayed(Runnable long)sendEmptyMessage(int)sendMessage(Message)sendMessageAtTime(Messagelong)sendMessageDelayed(Messagelong) 以上 post 类方法允许你排列一个 Runnable 对象到主线程队列中sendMessage 类方法允许你安排一个带数据的 Message 对象到队列中等待更新。 Handler 应用实例 子类需要继承 Handler 类并重写 handleMessage(Message msg) 方法用于接受线程数据。 以下为一个实例它实现的功能为通过线程修改界面Button的内容 public class MyHandlerActivity extends Activity { Button button; MyHandler myHandler; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.handlertest); button (Button)findViewById(R.id.button); myHandler new MyHandler();// 当创建一个新的 Handler 实例时它会绑定到当前线程和消息的队列中开始分发数据 // Handler 有两个作用// 1. 定时执行 Message 和 Runnalbe 对象 // 2. 让一个动作在不同的线程中执行 // 安排消息用以下方法 // post(Runnable) // postAtTime(Runnable, long) // postDelayed(Runnable, long) // sendEmptyMessage(int) // sendMessage(Message) // sendMessageAtTime(Message, long) // sendMessageDelayed(Message, long) // 以上方法以 post 开头的允许你处理Runnable对象 // sendMessage() 允许你处理 Message 对象(Message 里可以包含数据) MyThread m new MyThread(); new Thread(m).start(); } /** * 接受消息处理消息此 Handler 会与当前主线程一块运行 **/ class MyHandler extends Handler { public MyHandler() { } public MyHandler(Looper L) { super(L); } // 子类必须重写此方法接受数据 Override public void handleMessage(Message msg) { // TODO Auto-generated method stub Log.d(MyHandler handleMessage); super.handleMessage(msg); // 此处可以更新UI Bundle b msg.getData(); String color b.getString(color); MyHandlerActivity.this.button.append(color); } } class MyThread implements Runnable { public void run() { try { Thread.sleep(10000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } Message msg new Message(); // 存放数据 Bundle b new Bundle(); b.putString(color, 我的);msg.setData(b);// 向Handler发送消息更新UI MyHandlerActivity.this.myHandler.sendMessage(msg); } } }
http://www.pierceye.com/news/478772/

相关文章:

  • 互动营销网站免费学高中课程的软件
  • 沈阳网站建设活动方案公司网站建设攻略
  • 建网站 方法喜来健cms系统
  • 甘肃 网站备案关于网站开发费用的入账
  • 南昌建网站的公司个人博客模板网站
  • 银川建设局网站丹江口网站制作
  • 做化工的 有那些网站自动的东莞网站制作公司
  • 做网站要求高吗中国建设教育网
  • 支付宝 手机网站开发seo优化在哪里学
  • 建筑工人找活的平台郑州网站优化托管
  • 微网站 下载网站建设找刘贺稳营销专家
  • 网站建设的需求文档视频直播网站开发
  • 高州网站设计鄂尔多斯建设招投标网站
  • 建立网站看病的经济问题菜单设计制作图片
  • 网站推广优化招聘seo整站优化托管
  • 企业网站建设方案百度文库北京正邦品牌设计公司
  • 新乡个人网站建设国际婚恋网站排名
  • 昆明网站建设哪家seo内部优化具体做什么
  • 网站架构设计师浙江省建设厅网站证件
  • 服务器和网站维护安康网站建设公司报价
  • 网站搭建课程标准asp.net做购物网站
  • 网站代码怎么放seo怎么做
  • 网站建设需求说明书怎么写新手php网站建设
  • 织梦做招聘网站中山那些网站公司
  • 网站开发工程师公司购物网站推广
  • 做的网站打不开产品网站建设必要性
  • 网站建设模板免费下载制作网站公司图片
  • 网站建设是一次性给钱还是什么pr模板免费下载网站
  • 大气物流公司网站源码建设家装网站
  • 网站后台关键词交流建设网站