android的clickable功能,有关于enable和clickable

Android中,控件的Enable和Clickable属性有何区别?

首先要搞清楚的是,当一个控件的clickable属性无论是true还是false,控件看起来都是没有任何区别的。而你设置enable的话,那么就有区别了。enable是false的话,控件看起来都不可点击了!

下面,看代码吧!

44befb1a2931

enable和Clickable

这种情况下,48行的日志是打印不出来的,而56行的那行日志是可以打印出来的。

再往下看:

44befb1a2931

enable和Clickable

这种情况下,无论44行还是53行的日志,都打印不出来。

由以上可以得出结论:

设置了enable为false的话,onClick事件是完全屏蔽的,而clickable属性就要看设置属性和设置OnClicListener的先后顺序了。

最后,肯定还有一点要搞清楚的是:在xml布局文件中使用这两个属性会怎么样呢?

答案是和前面那种是一样的,也就是说,xml布局文件其实在前面已经被设进去了。

最最后,至于为什么会这样,其实我也不知道,再深层次的东西,就要深究到事件分发那一块了。

题外话:说明的是两个属性的优先顺序,enable的优先级要高于clickable。如果enable为false的控件,是不会对事件进行消费的。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部