在子线程创建handler进行处理消息

在子线程创建handler的写法:


new Thread(new Runnable() { @Override public void run() { //1、准备Looper对象 Looper.prepare(); //2、在子线程中创建Handler handler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); Log.i("handleMessage:", Thread.currentThread().getName()); Log.i("后台输出", "收到了消息对象"); } }; //3、调用Looper的loop()方法,取出消息对象 Looper.loop(); } }).start();



在主线程发消息


@Override public void onClick(View v) { Log.i("onClick:", Thread.currentThread().getName()); switch (v.getId()) { case R.id.btn: Message msg = handler.obtainMessage(); handler.sendMessage(msg); break; default: break; } }}

你可能感兴趣的:(技术分享)