Android之Handler分享

刚开始接触搭到Handler不理解为什么要用Handler,经过几次不断应用,才对Handler有了一个初步的理解。
Android在绘制UI的时候,在主线程中来绘制,这样就存在一个问题,当前的UI界面绘制完成以后,如果要修改UI界面的某个部分,如果直接修改,Android是不允许的。
如果有一些比较耗时的操作放在主线程了,会造成界面假死的状态,如下图的做法。
所以,对于比较耗时的操作都是放在子线程中操作的,操作完成以后,再去执行相应的动作。

比如下面的做法:

但是,如果有多个子线程操作的时候,如下图:

Android不允许直接在Activity里面进行修改,比如,当主线程在执行的时候,如果有多个子线程过来,都要操作这个控件,那么主线程该听谁的呢,不就乱套了。
这个时候就需要Handler了,Handler就相当于一个桥梁,连接子线程和主线程之间的桥梁,通知主线程什么时候执行什么时候的UI绘制。这样主线程就能有次序的绘制UI界面了。



更多相关文章

  1. 想抢先体验Android操作系统的魅力吗?那就使用Android(安卓)LiveCD
  2. 在android屏幕上 上 下 左 右 四个方向移动法拉利(Image)
  3. Android(安卓)P 图形显示系统(九) Android图形显示子系统概述
  4. 处女男学Android(二)---Handler预习篇之Android的线程与UI
  5. Android中的Handler在多线程中的使用
  6. 想抢先体验Android操作系统的魅力吗?那就使用Android(安卓)LiveCD
  7. 【Android和iOS】快速切换到主线程更新UI
  8. Android官方入门文档
  9. Android中的日历读写操作!!

随机推荐

  1. mysql数据库常见的优化操作总结(经验分享)
  2. Mysql中Join的使用实例详解
  3. bitronix 连接 MySQL 出现MySQLSyntaxErr
  4. 出现错误mysql Table 'performance_s
  5. mysql 5.7安装 MySQL 服务无法启动但是服
  6. mysql安装配置方法图文教程(CentOS7)
  7. MySQL按常规排序、自定义排序和按中文拼
  8. 详解如何通过Mysql的二进制日志恢复数据
  9. Linux下mysql5.6.33安装配置教程
  10. Mysql非安装版使用步骤及忘记密码解决方