# Handler **Repository Path**: HackerX9/Handler ## Basic Information - **Project Name**: Handler - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2017-11-06 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Handler ## handlerFuns ``` public class HandlerFuns { private Handler mHandler; public void funZero() { mHandler.sendEmptyMessage(0); Handler handler = new Handler(); handler.post(new Runnable() { @Override public void run() { } }); handler.postAtTime(new Runnable() { @Override public void run() { } }, 66666); handler.postDelayed(new Runnable() { @Override public void run() { } }, 88888); mHandler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); } }; } public void funOne() { Message message = new Message(); message.what = 0; message.obj = "we will go"; message.arg1 = 666; message.arg2 = 888; mHandler.sendMessage(message); } public void funTwo() { Message message = Message.obtain(); message.what = 0; message.obj = "we will go"; message.arg1 = 666; message.arg2 = 888; mHandler.sendMessageAtTime(message, 6666); } public void funThree() { Message message = mHandler.obtainMessage(); message.what = 0; message.obj = "we will go"; message.arg1 = 666; message.arg2 = 888; message.sendToTarget(); } public void funFour() { Message message = Message.obtain(); message.what = 0; message.obj = "we will go"; message.arg1 = 666; message.arg2 = 888; message.setTarget(mHandler); message.sendToTarget(); } } ``` ## perfectHandler ``` public static class PerfectHandler extends Handler { private final WeakReference mReferences; public PerfectHandler(Activity activity) { mReferences = new WeakReference(activity); } @Override public void handleMessage(Message msg) { Activity activity = mReferences.get(); if (activity != null && msg.what == 0) { } } } ``` ## LooperThread ``` class LooperThread extends Thread { @Override public void run() { Looper.prepare(); mHandler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); if (msg.what == 0) { Log.i("MainActivity", "---handleMessage()--->" + msg.obj); } } }; Looper.loop(); } } ```