为了账号安全,请及时绑定邮箱和手机立即绑定

if(mOnItemClickListener!=null)的问题

Hyman老师,请问你在bindViewHolder方法里面给view注册click监听器的时候再前面有一个if(mOnItemClickListener!=null)的设定,是因为为了防止并未给SimpleAdapter的实例mAdapter设置onItemClickListener 对吗? 


因为我在看您的视频的时候顺便学习了一下View的回调内容,这个地方老师你的代码和View里面似乎是一个意思

 public boolean performClick() {  

        sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_CLICKED);  

  

//在这个地方也对那个接口的上转型实例做出了一个判断

        if (mOnClickListener != null) {  

            playSoundEffect(SoundEffectConstants.CLICK);  

              

         

            mOnClickListener.onClick(this);  

            return true;  

        }  

  

        return false;  

    }  


正在回答

2 回答

回调机制呀。你自己写的回调接口,前台回去设置监听,你得判断它设置了监听才可以调用方法。

0 回复 有任何疑惑可以回复我~

1.对,是防止设置null的listener,因为传递的是对象的引用,这个引用是否为空还未知道的,比如 OnClickListener listener = null;xxx.setOnclickLIstener(listener); 这样子就有问题了,

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
明日之星-RecyclerView
  • 参与学习       40772    人
  • 解答问题       116    个

带领大家学习百变RecyclerView,绝对干货,告别加班不是梦

进入课程

if(mOnItemClickListener!=null)的问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信