onClick、onLongClick、onTouch

来源:互联网 发布:张无忌最爱赵敏 知乎 编辑:程序博客网 时间:2024/04/30 19:34

3种事件同时存在时:

1.onLongClick、onTouch 返回false时:

点击:action_down-->action_up-->onClick

长按:action_down-->longClick-->action_up-->onClick

 

2.onLongClick返回true       onTouch返回false

点击:action_down-->action_up-->onClick

长按:action_down-->longClick-->action_up

onLongClick返回true时,click不再执行

3.onTouch中down返回true(不管up和onTouch方法 返回true或false)

不会再执行onClick和longClick

4.如果down-false  up-true  (不管longClick和onTouch的返回值)

点击:down-->up-->longClick 

长按:down-->longclick-->up

并且点击后按钮一直保持按下姿态

onClick、onLongClick并存:

1.longClick返回false    长按:longClick-->Click      事件重合。

2.longClick返回true     两种事件是分开的。

点击:click

长按:longclick

 

总结:返回true说明本次点击处理结束。

在onTouch事件中,只要down||up返回true 就不会执行onClick事件。

在Click与LongClick同时存在想要互不干扰,要把LongClick返回改为false

在Click与onTouch事件并存onTouch都返回false才会在up后执行onclick

onTouch中up返回false点击后按钮会一直处在点击后的状态

 

0 0
原创粉丝点击