十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
1、若return false说明没有成功执行onTouch事件,在执行完onTouch里面的代码之后,onTouch事件并没有结束。因此某些组件如Gallery会自动执行它所在view里onTouch方法的代码。若在onTouch方法里面增加你的代码并且最后return false就会执行你在OnTouch方法中的处理操作了。
成都创新互联 - 成都移动服务器托管,四川服务器租用,成都服务器租用,四川网通托管,绵阳服务器托管,德阳服务器托管,遂宁服务器托管,绵阳服务器托管,四川云主机,成都云主机,西南云主机,成都移动服务器托管,西南服务器托管,四川/成都大带宽,成都机柜租用,四川老牌IDC服务商
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方法返回值(介绍)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持创新互联。