Looper

2016-06-15  本文已影响81人  jockerMe

Looper
用来创建一个message loop的线程,默认线程没有与之相关连的message loop,如果需要创建一个,在线程中调用prepaer()以创建循环,并且boop()将运行他的流程消息,知道循环结束。
大多数message loop通过Handler类活动
下面是一个典型的例子:

class LooperThread extends Thread{
  public Handler mHandler;

  public void run(){
    Looper.prepare();
    mHandler = new Handler(){
      public void handleMessage(Message msg){
        //process incoming message here
      }
    }
  }
}
Return Func
void dump(Printer pw ,String prefix) 为了debug调试,转储Looper状态
static Looper getMainLooper() 返回应用的主 looper
MessageQueue getQueue() 获得looper的message queue
Thread getThread() 获取与Looper绑定的线程
boolean isCurrentThread() 如果当前线程是looper线程,返回true
static void loop() 运行线程中的message queue
static Looper myLooper() 返回当前线程的Looper对象
static MessageQueue myQueue() 放回当前线程的MessageQueue对象
static void prepare() 将当前线程初始化为Looper线程
static void prepareMainLooper() 将当前线程初始化为Looper,把他作为应用的主 Looper
void quit() 退出 looper
void quitSafely() 安全的退出 looper
void setMessageLogging(Printer printer)控制由looper控制的消息记录
String toString()
上一篇 下一篇

猜你喜欢

热点阅读