Android View大厂面试题(三)

作者: 在岁月中远行 | 来源:发表于2022-08-15 00:02 被阅读0次

View设置了一个OnClickListener,那么它的onTouchEvent中,DOWN的事件返回是true还是false,为何?

现在我们从源码来分析:

View.setOnClickListener里面做了什么,

当View是不可clickable的,就设置为setClickable(true)

继续调用setFlags方法

其实就是给mViewFlags加上一个标志位CLICKABLE =0x00004000

再继续看onTouchEvent中方法中DOWN

这里会判断一个clickable变量,就是取出CLICKABLE标志位,如果有这个标志位,那么就为true。

可以看其实返回的就是clickable的值。所以返回的true。

其实这个题目View设置OnClickListener主要可能想考察TextView,ImagaView默认不是clickable,而Button默认就是clickable,所有button默认onTouchEvent的ACTIONDOWN事件返回true的。

相关文章

网友评论

    本文标题:Android View大厂面试题(三)

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