Android开发中OnTouchListener接口方法onTouch的返回值问题 /不响应TouchListener中的UP和MOVE

最近开发另一款小游戏:90坦克。当做到控制友方坦克的时候,是通过ImageView的OnTouchListener来实现监听用户的操作的。但是发现总是只能检测到MotionEvent.ACTION_DOWN,而不能检测到MotionEvent.ACTION_UP。我试了N次,都是这样。在网上找了一段时间,没有结果,没有这样的问题。后来我想起来我最开始开发的《俄罗斯方块》中也用到了这个接口,就看了下以前的代码,对比发现,只有一个地方有区别,就是重载的OnTouch方法的返回值问题。《俄罗斯方块》中返回true,而我现在这个项目里面返回false。然后我把返回值改成true,再运行,成功检测到了MotionEvent.ACTION_UP动作。
     然后我就到Android Developers上查看了一下这个接口和这个方法,文档中对该方法的返回值描述如下:True if the listener has consumed the event, false otherwise。大概意思就是说,如果返回true,则表示监听器消耗了该事件(我的理解就是不用继续向上传递该事件了,该事件的传递到此为止);否则返回false。这样一想,我觉得之前返回false,可能造成之后检测到的事件向上传递了,而没有在该监听函数中处理。
   如有理解不对的地方,还望各位多多指教!
转载自:http://blog.sina.com.cn/s/blog_5a6f39cf01012p5s.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值