本讲内容:Handler使用入门

当用户点击一个按钮时如果执行的是一个常耗时操作的话,处理不好会导致系统假死,用户体验很差,而Android则更进一步,如果任意一个Acitivity没有响应5秒钟以上就会被强制关闭,因此我们需要另外起动一个线程来处理长耗时操作,而主线程则不受其影响,在耗时操作完结发送消息给主线程,主线程再做相应处理。那么线程之间的消息传递和异步处理用的就是Handler。

下面我们通过一个模拟文件下载的这个长耗时操作来做个说明:

1、新建一个项目 Lesson27_Handler

2、在MainHandler.java中写如下面内容:

3、res/layout/main.xml的内容就省略了,你们可以根据程序运行截图和程序代码反推出来布局组件。

4、运行程序查看结果:

这个例子里,在辅助线程的run方法中执行长耗时操作,操作完毕后调用handler.sendEmptyMessage()方法,主线程中的Handler的 handleMessage()方法接受到这一消息,并做了就是关闭对话框的处理。

更多相关文章

  1. 更新操作系统Google 修正 Android(安卓)碎片化新法:多更新组件少
  2. [Android] 滑动操作的原理及处理
  3. android 短信 轰炸机 app 开发 记录 (2)
  4. Android(安卓)信号处理面面观 之 trace 文件含义
  5. Android轻松搭建MVVM + Retrofit + RxJava 及嵌入Android(安卓)A
  6. 处女男学Android(三)---Handler简介以及初步应用
  7. Android(安卓)Handler 的基本用法
  8. Android基础入门教程——7.3.3 Android(安卓)文件下载(2)
  9. 【Android】关于解决UI线程外控制UI界面更新---升级版(控制Suface

随机推荐

  1. Android 自定义动画 单个View平面位移以
  2. Android学习笔记:常用控件 RadioGroup和Ch
  3. 【eoe Android特刊】第二十五期 Android
  4. Android:(13)Intent消息传递
  5. android:layout_marginLeft指该控件距离
  6. Android图形显示系统——下层显示4:图层合
  7. MaterialDesgin之MaterialTextField
  8. 关于Android进程知识,你需要知道这些(一)
  9. Android中图片实现按钮点击效果
  10. android依赖工程 java build path androi