tableView中添加按钮触发不了点击事件的解决办法

第一次发博客,不对的地方还请大家包含~

OK,我们直接进入主题。最近在做一款cocos的游戏,准确的说是一款学习类软件,只不过用的是cocos。做的过程中遇到一个问题,就是在tableView中添加csb文件,这个csb文件中有按钮,当你试图滑动的时候点击事件都被按钮吞噬了。下面说说我的解决办法。

先上一波代码:此处代码为tableView中被添加的按钮的类

 大家可以看到,m_button是我从csb文件中获取到的按钮,然后对m_button设置了 setSwallowTouches(false);设置为false,让点击事件可以向下传递,虽然这样可以实现很顺畅的滑动tableView,但是你会发现,在你滑动后手松开的一瞬间,就会选取上你一开始点击的那个按钮,我相信这个肯定不是你想要的,也不是用户想要的。接下来就说一下如何解决误操作的问题。

首先:在.h文件中设置一个变量,我是设置了一个整形变量,在构造函数中赋值为0;

其次:对m_button这个按钮进行moved、ended监听;当在移动tableView时候你的手在在按钮上,按钮此时会触发MOVED事件,这个时候将之前设置的整形变量赋值为1,然后在ENDED事件中进对这个变量判断;当这个整形变量为0时,触发你想要的结果,也就是触发点击后按钮的效果。如果为1时,不触发这段代码,将这个变量设置为0;

      以上只是个人想到的解决方案,发出来跟大家分享。希望多指教,废话有点多吐舌头

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值