异步数据处理Handler

Posted 371502685

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了异步数据处理Handler相关的知识,希望对你有一定的参考价值。

在单线程的程序当中,主线程在处理大数据或者访问网络资源,UI主线程往往会卡住,出现点不动的现象(UI线程被阻塞),这种情况下,一般 会用多线程来处事,单独开一个子线程进行数据处理,这就会遇到一个问题,子线程更新的数据如何反映到UI主线程中,这就要用到Handler,它的主要功 能是接受子线程发送的数据, 并用此数据配合主线程更新UI。具体用法也蛮简单:

1. 在子线程串发送message

Message msg = new Message();
Bundle b = new Bundle();// 存放数据
b.putString(“color”, “我的”);
msg.setData(b);
MainActivity.this.myHandler.sendMessage(msg);

2. Handler中的handleMessage接收消息,并把接收中包含的数据更新至ui界面中国

super.handleMessage(msg);
Bundle b = msg.getData();
String color = b.getString(“color”);
MainActivity.this.buttonStart.append(color);

以上是关于异步数据处理Handler的主要内容,如果未能解决你的问题,请参考以下文章

Android之Handler(异步消息处理)机制

异步数据处理Handler

异步消息处理机制

Handler Looper Message异步消息处理线程机制( hander消息机制原理)

Android Handler 异步消息处理机制的妙用 创建强大的图片载入类

Android异步消息处理机制掌握,从源码了解常使用的Handler