Android消息处理机制:Handle
来源:互联网 发布:时时彩数据 编辑:程序博客网 时间:2024/06/05 05:42
今天我们来讲讲Android的处理机制Handle,跟之前一样,只入门,不深入。
Handle能做些什么呢?
1)执行计划任务,你可以再预定的实现执行某些任务,可以模拟定时器。
2)线程间通信。在Android的应用启动时,会 创建一个主线程,主线程会创建一个消息队列来处理各种消息。
下面我们用更新ui线程的案例来讲述Handle的用法
首先要新建一个Handle并实现handleMessage方法
贴代码
public class MainActivity extends AppCompatActivity { private Button button; private ProgressBar progressBar; private Handler handler=new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); //根据message中的what值来判断是那个线程发过来的消息 switch (msg.what){ case 1: //对progressbar进行更新,效果直接显示在ui上 progressBar.setProgress(msg.arg1); break; case 2: break; } } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button = (Button)this.findViewById(R.id.handle); progressBar = (ProgressBar)this.findViewById(R.id.progressbar); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //创建一个线程,并在线程中发送消息给handle,然后统一由handle进行处理 new Thread(new Runnable() { @Override public void run() { for(int j=1;j<=100;j++) { /* 创建Message,Message中有三个参数 what:用来表示消息的标识 arg1:用来传参数 arg2:用来传参数 */ Message msg = new Message(); msg.what=1; msg.arg1 = j; try { Thread.sleep(1000); handler.sendMessage(msg);//把Message发送给Handle } catch (InterruptedException e) { e.printStackTrace(); } } } }).start(); } }); }}初学入门者,就到这里啦,关于这个机制中 的角色,大家可以稍微了解一下,主要有四大角色:
Message:消息队列,用来存放线程放入的消息
Handle:用来接收和发送Message(消息)
Loop:接收Handle中发送的消息,并处理
线程:各种线程
整个机制的运行机制是:
由线程通过 sendHandle() 将线程中创建的Message发送给Handle,Handle接收到各种线程发送来的消息进行统一处理,由Handle统一处理。
Handle将消息发送给Message Queue,进行处理。
基本的就到这里啦。想更深入我这地小,哈哈,晚安!
鄙人小小白,多多光照!
0 1
- Android消息处理机制:Handle
- android异步处理,分析Handle消息机制
- Android消息机制---handle
- Android Handle,Looper,Message消息机制
- Android线程中消息处理(Handle,Looper)
- android的消息处理机制handle解析——Looper,Handler,Message
- Handle发送消息机制
- handle消息机制
- Handle消息机制
- Android 消息处理机制
- Android消息处理机制
- Android消息处理机制
- android消息处理机制
- android 消息处理机制
- Android消息处理机制
- Android消息处理机制
- Android消息处理机制
- Android消息处理机制
- WEB前端-DOM-基本使用
- iOS 笔记---GCD篇
- 球形射线的使用
- 当跨界借鉴已然成为一种新常态
- linux查看文件有多少行(WC)
- Android消息处理机制:Handle
- onkeyup,onkeydown和onkeypress的区别介绍
- java生成随机数
- 20. Yii 2.0 gii 代码生成器
- 加密技术
- js学习笔记:数据类型
- Android中的指纹识别
- 352. Data Stream as Disjoint Intervals
- 复习