博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Handler的使用
阅读量:5076 次
发布时间:2019-06-12

本文共 1206 字,大约阅读时间需要 4 分钟。

一、Handler使用步骤

  

//这个是Activity中的Handler

Handler mHandler = new Handler (){

  

}

 

1.//创建Activity当中的Messenger

Messenger  messenger = new Messenger(mHander);   //把Activity的Handler包装进去

 

2.//创建消息

Message msg = new Message();

msg.what = 1;

msg.replyTo =  messenger;

 

3. //使用Service的Messenger发送Activity的Messenger

mServiceMessenger.send(msg);

--------------------------------------------------------------------------------------

handler.post(Runnable) : 可以更新当前的UI信息

handler.postDelayed(Runnable , 2000);  : 按照时间从小到大取排列插入队列并且更新信息

Message msg = handler.obtainMessage();

Message msg = new Message();

handler.removeCallbacks(Runnable) ;     :  移除当前UI线程的信息,不在进行信息的更新

Handler  handler = new Handler(){

  public void handleMessage(Message msg){      :   重写handleMessage来接受handler发送过来的信息

  ........

  }

}

对比上面的代码:

private Handler handler = new Handler(new Handler.Callback() {
@Override public boolean handleMessage(Message msg) {
     true : 下面的void handleMessage数据被劫走,不会进行显示      false: 下面的void handleMessage数据不会被劫走,数据进行显示
return true;   (return false)     } }){
@Override public void handleMessage(Message msg) {
textView.setText("" + msg.arg1); } };

 

转载于:https://www.cnblogs.com/liunx1109/p/9761500.html

你可能感兴趣的文章
Pycharm 常用快捷键
查看>>
亲测SQLServer的最大连接数 (转)
查看>>
运行sql server profiler所需的权限 .
查看>>
Python基础第三课
查看>>
CodeForces 509C Sums of Digits(贪心乱搞)题解
查看>>
左手坐标系和右手坐标系
查看>>
solr后台操作Documents之增删改查
查看>>
http://yusi123.com/
查看>>
文件文本的操作
查看>>
Ubuntu linux下gcc版本切换
查看>>
记一次Web服务的性能调优
查看>>
Linux常用命令大全
查看>>
水了两道括号匹配
查看>>
虚拟环境安装
查看>>
jQuery.form.js使用
查看>>
【ztree】zTree节点增删改
查看>>
不变(Immutable)模式
查看>>
react-native run-android时 SDK location not found.报错
查看>>
75)编写嗅发器
查看>>
内存池原理大揭秘
查看>>