美文网首页
Android中介绍Handler的几种用法

Android中介绍Handler的几种用法

作者: 背锅TV丶伴奏大师 | 来源:发表于2019-07-29 11:22 被阅读0次

第一种

@SuppressLint("HandlerLeak")
    private Handler mHandler=new Handler(){
        @Override
        public void handleMessage(Message msg) {
            super.handleMessage(msg);
            switch (msg.what) {

            }
        }
    };
//mHandler.sendEmptyMessage(0);
@Override
    public void onDestroy() {
        super.onDestroy();
      //防止handler内存泄漏
        mHandler.removeCallbacksAndMessages(null);     
    }

第二种

private Handler handler = new Handler(new Handler.Callback() {
        @Override
        public boolean handleMessage(Message msg) {
            switch (msg.what) {               
            }
            return true;
        }
    });
//handler.sendEmptyMessage(0);
@Override
    public void onDestroy() {
        super.onDestroy();
      //防止handler内存泄漏
        handler.removeCallbacksAndMessages(null);     
    }

第三种

private WeakHandler weakHandler=new WeakHandler(this);
    private static class WeakHandler extends Handler {
        WeakReference<Activity> weakReference;
        public WeakHandler(Activity activity) {
            weakReference = new WeakReference<>(activity);
        }
        @Override
        public void handleMessage(Message msg) {
            Activity activity = weakReference.get();
            if (activity != null&& !activity.isFinishing()) {

            }
        }
    }
    //weakHandler.sendEmptyMessage(0);

如果还有其他用法,请高人赐教。
ps:孔乙己先生,handler有几种用法啊!

相关文章

网友评论

      本文标题:Android中介绍Handler的几种用法

      本文链接:https://www.haomeiwen.com/subject/gigvrctx.html