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

星组游戏论坛

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

QQ登录

只需一步,快速开始

查看: 607|回复: 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定义
  \; h2 Z7 [0 Q- {9 Z  Z   主要接受子线程发送的数据, 并用此数据配合主线程更新UI
$ f0 y; u! D1 I) f5 U  c' A; ?二、Handler特点: R/ K" ?5 c1 L2 l9 b# x, W9 u0 D
    handler可以分发Message对象和Runnable对象到主线程中, 每个Handler实例,都会绑定到创建他的线程中(一般是位于主线程),
, K) G- z7 a5 ?3 K0 v    它有两个作用:
% ]; A+ m  U3 W# B# a       1、安排消息或Runnable 在某个主线程中某个地方执行/ ]$ E: m. U, D' ]! f2 I
       2、安排一个动作在不同的线程中执行
9 e7 m2 H. E) ^/ v% ^    子类需要继承Hendler类,并重写handleMessage(Message msg) 方法, 用于接受线程数据
; h' c5 |1 S$ x: s# l6 U& q2 F9 U    例如:* I6 i7 S6 }3 h
    Handler handler=new Handler(){- A% [! @2 \6 e, N2 R
     public void handleMessage(Message msg){$ I  ?  z" g# E8 Q) _4 H0 r
      2 n7 j' R0 H1 ~. z( a, N
     }
: F9 t. }: m6 o6 L0 q    };9 C' N2 K$ D6 w1 d2 A
三、Handler中分发消息的一些方法
6 X7 a  o. v/ \+ t    post(Runnable)+ h* g% m* j6 I3 `
    postAtTime(Runnable,long), N: V; ?" W" s) M! W
    postDelayed(Runnable long)
; u- m! a4 O6 A" q! x  r    sendEmptyMessage(int)
- m, w: f( V& D- T0 A' E7 _    sendMessage(Message)+ E  U/ ?. E8 l& O
    sendMessageAtTime(Message,long)) ?0 P9 V3 T/ ?$ G
    sendMessageDelayed(Message,long)
1 \( ?: j# O! G7 N8 j% a8 W, N. t0 @4 V; N6 p: g- ~
已有 1 人评分星币 收起 理由
绝世爱笑 + 1 这样才算爱过~

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

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

GMT+8, 2017-11-20 19:40

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部