【Android】 onClick与onTouch并存触发的问题

本文探讨了在Android中,为何在同时设置了setOnTouchListener和setOnClickListener时,onClick事件可能无法触发的问题。关键在于onTouch事件的返回值。如果onTouch的down action返回true,事件将被消费,onClick不再执行。只有当onTouch返回false时,onClick才能被调用,二者才能共存。此外,文章补充了Touch Mode和组件的焦点行为对事件处理的影响。
摘要由CSDN通过智能技术生成

最近有看到一个问题,原文如下:

我用WindowManager.addView(view, params)方法添加了一个view,当我实现这个view的setOnTouchListener和setOnClickListener时,view只能监听ontouch事件,监听不到onclick事件,我去掉setOnTouchListener后就能监听到onclick事件,这是怎么回事?如何让这个view能监听到这2中事件?


发现有很多人对这个知识点有点模糊,回答之后,把自己的理解整理下,随便在这里分享一下。

下面是回答原文:


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值