小谈 Handler
来源:互联网 发布:暗黑破坏神3 知乎 编辑:程序博客网 时间:2024/05/29 14:59
在android中,非UI线程不能直接操作UI线程的UI组件。如果想要在非UI线程中对UI组件进行操作,可以通过Handler来进行。在使用Handler之前,必须保证线程中已经实例化了一个Looper对象,且一个线程只能有一个Looper对象。Handler可以看做是Looper的接口,Looper负责接收消息和处理消息。实例化一个Looper可以调用Looper.prepare()方法来进行实例化。而Looper.loop()则是启动Looper对象进行消息的接收处理,该方法是一个无限循环的方法,一旦调用,后面的代码将不被执行,除非停止掉该方法。主线程中在初始化时已经初始化了一个Handler和Looper对象。而在非主线程中,若要用Handler,则必须自己新建一个Handler对象,并且在新建对象之前,在线程中实例化一个Looper对象,通过调用Looper.prepare()方法。
Toast和Dialog都有一个Handler的实例变量,所以在使用Toast和Dialog时,如果不是在主线程中,则在使用之前必须先实例化一个Looper,即调用Looper.prepare()。最后调用Looper.loop()启动Loop对象即可。
Toast和Dialog都有一个Handler的实例变量,所以在使用Toast和Dialog时,如果不是在主线程中,则在使用之前必须先实例化一个Looper,即调用Looper.prepare()。最后调用Looper.loop()启动Loop对象即可。
0 0
- 小谈 Handler
- Handler用法小例子
- handler 小笔记
- Handler源码小窥
- Android中Handler小例子
- android基础Handler小例子
- 关于Handler几个小知识点
- Asp.Net Handler+JQuery/JSON 小示例
- Handler小例子逐步深入理解一
- 线程间通信之Handler小实验
- Handler,Message,MessageQueue,AsyncTask,Service小知识点
- Handler和它的小姐妹HandlerThread
- 了接Handler的延迟小机制
- Handler
- Handler
- Handler
- handler
- handler
- Fragment 出现Can not perform this action after onSaveInstanceState
- 开门人和关门人
- 网络通信原理
- 如何将PPT转换成PDF格式
- jason与array之间的相互转换
- 小谈 Handler
- [网络流24题]魔术球问题(简化版)
- Servlet实现文件上传,可多文件上传
- CentOS 6.5 64位 MySQL安装问题处理
- Codeforces 449C - Jzzhu and Apples / 450E - Jzzhu and Apples
- openfire数据库中文乱码问题
- ubuntu完全卸载nginx
- startActivityForResult用法详解
- 解决SQLite3 not found