找到一个类
Handler
它有函数dispatchMessage, handleMessage, 但没有PeekMessage这类函数,那怎么用它来截获消息呢?

解决方案 »

  1.   

    继承Handler
    然后实现其接口,就有接受的方法了。。
    直接new一个线程去做也是没问题的,至于你说的那个问题,应该是你使用的原因
      

  2.   

    用法问题吧,应该是你新建的线程阻塞了主线程,建议你用Runnable实现或Handler实现
      

  3.   

    我就会使用Message,Handler来从线程向主线程发送消息....
    用于:在线程时,通知UI处理:添加按钮,改变编辑框啥的,这些UI操作不是线程安全的,只能在主线程里工作... protected boolean sendMessage(int msg, int wParam, int lParam, Object data) {
    Handler handler = new EventHandler(Looper.getMainLooper()); //Looper.myLooper(); //get looper of current thread
    //handler.removeMessages(0); //clear all MessageQueue //why need to do that?
    Message m = handler.obtainMessage(msg, wParam, lParam, data);
    return handler.sendMessage(m);
    }class EventHandler extends Handler {
    public EventHandler(Looper looper) {
    super(looper);
    } public synchronized void handleMessage(Message msg) {
    redirector.this.WndProc(msg.what, msg.arg1, msg.arg2, msg.obj);
    super.handleMessage(msg);
    }
    }
      

  4.   

    异步处理,比如加载图片,耗时间的下载,都可以用android提供的AsyncTask类来完成,比handler更方便管理