设为首页收藏本站
机战Z2破界篇 星组汉化 下载

星组游戏论坛

 找回密码
 注册(QQ注册+邀请注册)

QQ登录

只需一步,快速开始

查看: 714|回复: 0

[心得] 关于Handler的使用 [复制链接]

Rank: 11Rank: 11Rank: 11Rank: 11

UID
98177
星币
23
积分
9
阅读权限
90
注册时间
2013-4-11
最后登录
2014-1-16
发表于 2013-5-8 18:02:04 |显示全部楼层
一、Handler定义" f2 n' C4 k4 [7 Z) u! L/ L+ E2 Y6 u
   主要接受子线程发送的数据, 并用此数据配合主线程更新UI
+ T) l/ E9 A4 g: w) o/ b二、Handler特点$ V- x5 t: V& l
    handler可以分发Message对象和Runnable对象到主线程中, 每个Handler实例,都会绑定到创建他的线程中(一般是位于主线程),
5 B- l/ w( c( _' c# J+ L7 M+ g5 m    它有两个作用:
3 c& Q6 j. y/ ]* Y1 l: }/ x       1、安排消息或Runnable 在某个主线程中某个地方执行
1 w! F) C/ j3 C% g, V0 b       2、安排一个动作在不同的线程中执行# P' N1 ~; C$ Y! K+ @! w1 T" L
    子类需要继承Hendler类,并重写handleMessage(Message msg) 方法, 用于接受线程数据
/ F- I* s/ ^' H3 W    例如:
. j9 ^6 q% F4 d: v- @0 [    Handler handler=new Handler(){
. v# E; X/ n8 z     public void handleMessage(Message msg){3 L  I- R- T$ Y) N1 w
      & L1 j' I' @! D  b9 k
     }1 ~) k  g! c" @+ b* @
    };5 R! Q* j+ u" M# b3 i  v
三、Handler中分发消息的一些方法8 F3 K9 l! C0 h
    post(Runnable)
0 K/ y7 p1 w9 q/ R& X. n, }. S    postAtTime(Runnable,long)
" E& h$ F, t: ?& v+ {# x1 U; C    postDelayed(Runnable long)
/ Q8 B& Y; \. V' s, M+ D2 d    sendEmptyMessage(int)- A% a( V% g0 U! L
    sendMessage(Message)
! O* r* v( z* ]) m. D    sendMessageAtTime(Message,long)
' \: E4 w3 v- w0 O& e! Y: y    sendMessageDelayed(Message,long)( [0 ^5 O  @+ K
8 M0 U! `% f# O/ B% B. X* B; I& J6 h
已有 1 人评分星币 收起 理由
绝世爱笑 + 1 这样才算爱过~

总评分: 星币 + 1   查看全部评分

Archiver|星组游戏论坛 ( 京公网安备110403080002 )  

GMT+8, 2018-6-23 02:33

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部