Android onTouchEvent事件中onTouch方法返回值(介绍)

发布时间:2020-09-20 16:05:57 作者:jingxian
来源:脚本之家 阅读:813

1、若return false说明没有成功执行onTouch事件,在执行完onTouch里面的代码之后,onTouch事件并没有结束。因此某些组件如Gallery会自动执行它所在view里onTouch方法的代码。若在onTouch方法里面增加你的代码并且最后return false就会执行你在OnTouch方法中的处理操作了。

2、若return true说明你已经成功执行onTouch方法了,在执行完onTouch中的代码之后,这个onTouch事件就结束了。也不会再调用组件如Gallery默认的onTouch方法了。在onTouch方法中,我们可以做很多操作,如move,down,up等等,若我们在move里面return false,那么接着的fling,up等后面的事件也不会处理。

Gallery.setOnTouchListener(new OnTouchListener(){ 




//@Override 

public boolean onTouch(View v, MotionEvent event) { 

System.out.println("Gallery onTouch"); 

if(event.getAction()==MotionEvent.ACTION_MOVE){ 

mDismiss.removeMessages(1); 

System.out.println("ACTION_MOVE "); 



}else if(event.getAction()==MotionEvent.ACTION_UP){ 

mDismiss.sendEmptyMessageDelayed(1,10000); 

System.out.println("ACTION_UP "); 

} 

return false; 

} 



}); 

注意:

1、在ViewGroup中onInterceptTouchEvent方法若反回false,那么触屏事件会继续向下传递,但如果没有子View去处理这个事件,即子view的onTouchEvent没有返回True,则最后还是由ViewGroup去处理这个事件,也就又执行了自己的onTouchEvent。

2、onTouch调用前会自动调用onInterceptTouchEvent 如果onInterceptTouchEvent返回的false,则不会调用onTouchEvent,若重写onInterceptTouchEvent让它在需要调用onTouchEvent时返回true

以上这篇Android onTouchEvent事件中onTouch方法返回值(介绍)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持亿速云。

推荐阅读:
  1. Android中怎么实现触摸事件传递机制
  2. Android中怎么利用View实现事件分发

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

ontouch 返回值 ontouchevent

上一篇:springmvc fastjson 反序列化时间格式化方法(推荐)

下一篇:SpringBoot 集成Kaptcha实现验证码功能实例详解

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》