Handler的规范使用
来源:互联网 发布:不知道自己做什么知乎 编辑:程序博客网 时间:2024/05/22 06:31
private static class MyHandler extends Handler { private final WeakReference<MainActivity> mReference; public MyHandler(MainActivity activity){ mReference = new WeakReference<MainActivity>(activity); } @Override public void handleMessage(Message msg){ super.handleMessage(msg); if (msg.what == 0) { MainActivity mainActivity = mReference.get(); if (mainActivity != null) { mainActivity.doSomething(msg); } } }}
在fragment中使用:
private static class MyHandler extends Handler { private final WeakReference<ThreeFragment> mReference; public MyHandler(ThreeFragment activity){ mReference = new WeakReference<ThreeFragment>(activity); } @Override public void handleMessage(Message msg){ super.handleMessage(msg); if (msg.what == REFRESH_ADAPTER) { ThreeFragment activity = mReference.get(); if (activity != null) { activity.doSomething(msg); } } }}
阅读全文