1.可自定义一个这样的WeakReferenceHandler

public class WeakReferenceHandler<T> extends Handler {    private final WeakReference<T> mReference;    public WeakReferenceHandler(T referencedObject) {        mReference = new WeakReference<>(referencedObject);    }    public WeakReferenceHandler(Looper looper, T referencedObject) {        super(looper);        mReference = new WeakReference<>(referencedObject);    }    protected T getReferencedObject() {        return mReference.get();    }}



  

2.在Fragment创建一个新Handler并继承WeakReferenceHandler

private RangHandler mHandler;
/** * 处理异步操作 */private static class RangHandler extends WeakReferenceHandler<RankingFragment> {    public RangHandler(RankingFragment referencedObject) {        super(referencedObject);        // TODO Auto-generated constructor stub    }//编写自己的需要执行的任务    @Override    public void handleMessage(Message msg) {        RankFragment fragment = getReferencedObject();        if (fragment != null && fragment.getActivity() != null) {            switch (msg.what) {                case MSG_SHOW:                    fragment.refreshed();                    if (fragment.mRankDataAdapter != null) {                        fragment.mRankDataAdapter.notifyDataSetChanged();                    }                    break;                case MSG_ERROR:                    if (fragment.isAdded())                        Toast.makeText(fragment.getActivity(), R.string.error_response, Toast.LENGTH_SHORT).show();                    fragment.refreshedFail();                    break;                default:                    if (fragment.isAdded())                        Toast.makeText(fragment.getActivity(), R.string.error_response, Toast.LENGTH_SHORT).show();                    break;            }        }    }}


  
3.在onCreateView方法中实例化Handler
mHandler = new RangHandler(this);


4.需要调用的地方时
mHandler.sendEmptyMessage(MSG_SHOW);





更多相关文章

  1. android需要的访问权限(不断更新,希望大家多交流)
  2. API 25 (Android(安卓)7.1.1 API) animation.Animator
  3. Android(安卓)Audio
  4. Android——继承SimpleAdapter重写自己的getView
  5. Android(安卓)jni调用,实现自己的JNI_OnLoad函数
  6. Native+WebApp中Phonegap调用Android(安卓)Activity
  7. android异步的几种方式
  8. Android(安卓)LCD和键盘 背光亮度设置
  9. android 自定义文字跑马灯 支持拖拽,按住停止滚动,自定义速度

随机推荐

  1. android在window下的开发环境搭建
  2. Android(安卓)DataBinding 字符串拼接
  3. 【转】你不知道一些神奇Android(安卓)Api
  4. ListView开发技巧
  5. Android开发手记1--环境配置
  6. Android利器-AndroidStudio快捷键(For Mac
  7. Android之MediaPlayer
  8. android:windowSoftInputMode属性详解
  9. Android(安卓)开发小工具之:Custom Tabs
  10. 【Android】Android(安卓)概述_习题