语言环境:

Cocos2dx 3.6

Lua 5.1

UI编辑器:Cocos Studio v2.0.6

问题:Scrollview控件滑动与其子控件监听发生冲突。

在点击子控件时,若在子控件上进行移动,父容器Scrollview不会执行滑动事件,像是被吞噬了一样

我的解决思路是不改底层,通过逻辑来控制。直接上代码:

local moveOrReq = nil --移动或请求
local countMove = 1   --移动计次
--监听事件:按钮(子控件)
local TouchEventByBtn = function (obj,e)if e == ccui.TouchEventType.began then      ---0moveOrReq = nilcountMove = 1elseif e == ccui.TouchEventType.moved then   ---1countMove = countMove + 1if countMove > 10 thenmoveOrReq = "move"endelseif e == ccui.TouchEventType.ended and moveOrReq == nil then    ---2(重点:执行事件放这里)--这里执行需要执行的按钮事件elseif e == ccui.TouchEventType.canceled then        ---3moveOrReq = nilend
end

以上代码是子控件的监听执行事件,这里子控件我采用的是Button,对每一个子控件进行监听,父容器Scrollview不监听

要注意:若出现无法移动的情况。多半是Button吞噬了Scrollview,在创建每一个子控件时加上这一句代码:

btn:setSwallowTouches(false)

以上的解决思路是我综合不改底层情况下在脚本层解决的最优思路,当然,若为了所有的情况都避免,可以自定义监听,也可以自己封装继承函数

Cocos2dx中Scrollview控件滑动与其子控件监听冲突的解决方案(不改底层、最优)相关推荐

  1. IOS学习之UISwitch控件两种使用方法和监听

    IOS学习之UISwitch控件两种使用方法和监听 分类: IOS开发入门2012-06-15 11:48 1363人阅读 评论(0) 收藏 举报 一.第一种创建UISwitch控件的方法,在代码中动 ...

  2. Android中对menu、home、back键的监听

    Android中对menu.home.back键的监听,通过KeyEvent中的常量值来判断用户点击了哪个按钮. 其中对home键的监听需先在manifest文件中添加 <uses-permis ...

  3. Cocos2d-x学习(七):cocos2d-x中ScrollView的简单实现

    在游戏关卡选择,道具店之中经常会用到类似于ScrollView的控件,之前用AndEngine引擎的时候简单的实现了一个,(AndEngine滑动菜单传送门),考虑到手头的游戏以后也会用到,就先用co ...

  4. C#如何获取当前控件的子控件以及多重子控件的实例(能操作这些获取到的子控件)

    拿个实例,参照这个实例的思路可以解决: 比方说,我想获取到这个tabControl下当前选中的tabPage下的TableLayoutPanel下所有的Button控件 (ps:以下是一个通过ini文 ...

  5. recyclerview滑动到顶部和底部监听+上滑下滑监听

    到达顶部和底部监听 判断是否滑动到底部, recyclerView.canScrollVertically(1);返回false表示不能往上滑动,即代表到底部了: 判断是否滑动到顶部, recycle ...

  6. cmd中检测远程的ip和端口是否处于监听状态

    第一步:使用ping命令测试远程的ip是否可连通 在cmd中输入ping ip地址: 如果最后的统计信息中丢失率为0表示可以连通该ip地址.那么就可以进行下一步的测试该ip下的某一个端口是否开放的操作 ...

  7. java 多个监听_​Java中使用for循环对多个Jbutton按钮监听

    Java中Jbutton按钮监听,当多个按钮做的事差不多的时候是可以用for循环的(比如计算器1-9)省事省力. 监听时变量只能是final或者static,不过这些在for循环中明显不行,所以,就在 ...

  8. vue中给window添加滚动监听无效的解决方案

    页面中有这么一个需求,当页面滚动到一定高度之后,页面中的某些元素进行吸顶,固定到顶部位置,或者是滚动到一定程度进行更新数据的操作. 我相信不少网友查阅过类似的资料,网友给出的解决方案,很多都是在mou ...

  9. 如何查找oracle中的服务器端口号,客户端端口号,监听端口及号Enterprise Manager Console HTTP 端口

    求教  oracle中可以查看端口号的sql语句,服务器端口号,客户端端口号,监听端口号都可以,一定要是用sql语句查看的  通过文件查看的不可以 引用 求教  oracle中可以查看端口号的sql语 ...

最新文章

  1. struct和class内存大小的计算
  2. 你知道前端单页面路由是怎么实现的吗?
  3. PAT甲级1021 Deepest Root :[C++题解]树的最大深度、并查集、dfs求树的深度
  4. 两个排序数组合并第k或前k个最小值问题
  5. mysql笔记03 查询性能优化
  6. Nexus入门指南(图文)[转]
  7. php正则去掉width=,关于php使用正则去除宽高样式的方法
  8. python小课离线版_断网环境下利用pip安装Python离线安装包
  9. MOSS架构和共享服务(Shared Service)
  10. 532. 数组中的K-diff数对
  11. VSCODE 改变Python版本到3.10
  12. 操作系统:磁盘调度实验之扫描和循环扫描调度算法(含源码和文档)
  13. 不会写Java面试简历?看这一篇就够了(项目经历,个人技能)
  14. 通达信报计算机内存不足,导入通达信股票数据至内存数组中的方法和代码
  15. <零售数据分析-Pandas> 通过环比销售和库存对产品进行分类
  16. 计算机辅助设计cad实训总结,CAD上机实验报告.doc
  17. QT for Android串口开发
  18. 载波通信在电网智能化中的应用
  19. 关于 Kubernetes中API Server授权(RBAC)管理的一些笔记
  20. 使用ccproxy实现 代理上网

热门文章

  1. 干货 | android下使用的渗透工具介绍
  2. 英伟达带给投资者的痛苦才刚刚开始
  3. Spring Boot遇上jello
  4. 用python证明中心极限定理_ST.中心极限定理计算机证明
  5. mysql 计算排名_教你用SQL实现统计排名
  6. 新版微信订阅号和服务号的区别
  7. python有哪几种基本数据类型_Python最基本的数据类型以及对元组的介绍 Python 中列表和元组有哪些区别...
  8. 图的应用——迪杰斯特拉最短路径
  9. 阻塞主线程,等待异步子线程执行完毕再退出主线程,有几种写法?
  10. java中print换行符_如何在java中打印带换行符的字符串