美文网首页
使用Butterknife,有强制刷新、刷新、加载功能,进入界面

使用Butterknife,有强制刷新、刷新、加载功能,进入界面

作者: 小婷android | 来源:发表于2018-05-09 09:24 被阅读0次
    原因:因为网络请求一般都是异步请求,请求成功回调后,都需要更新ui,这个时候,如果界面已经调用了onDestory()方法,相当于这个Activity已经被销毁了,调用了unBind()方法,就会报空指针了。
    解决:在super.onDestroy();这个前面解绑,解绑后并将Unbinder对象置为null,然后在请求网络回调的方法中判断当Unbinder==null时,return;不执行下面更新ui的操作了。

    代码:
    base类:

     @Override
        public void onDestroy() {
            if (mUnbinder!=null) {
                mUnbinder.unbind();
                mUnbinder=null;
            }
            super.onDestroy();
        }
    

    请求网路回调:

     @Override
                public void success(ReturnVo<SubjectList> subjectListReturnVo, Response response) {
                    if (mUnbinder==null){
                        return;
                    }
    }
    
    注意:如果存在强制刷新,则需要在调用强制刷新的方法前判断是否为空

    相关文章

      网友评论

          本文标题:使用Butterknife,有强制刷新、刷新、加载功能,进入界面

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