Cocos2dx Lua 关于Touch事件传递阻止下层传递的问题
来源:互联网 发布:2016淘宝做什么产品好 编辑:程序博客网 时间:2024/04/23 16:10
在游戏开发中,经常会碰到在一个界面弹出类似于弹窗类的控件,这时需要将下层的点击屏蔽掉,之前的做法是将下层的touch事件都管理起来,弹窗关闭时再将其touc打开,
今天探索发现一个更简洁快速的方法,将弹窗层的TouchPriority注册为小于最大优先级,再将弹窗层上的按钮的优先级设置为TouchPriority-1,使按钮的优先级比弹窗层的优先级高,这样就造成三个级别的层,最下面为下层需要屏蔽的层,中间层为弹窗层,最上层为按钮层,此时优先级为按钮层>弹窗层>屏蔽层。
代码示例:
LayerTouchPriority = -129 --弹窗层的优先级<大于最大优先级>
--设置弹窗层的优先级<handle,是否多点触摸,优先级,是否吞噬下层touch><began方法里必须返回true>
layer:registerScriptTouchHandler(function(eventType) if eventType == "began" then return true end end, false, LayerTouchPriority, true)
layer:setTouchEnabled(true)
--再将按钮的优先级设置为大于弹窗层的优先级
button:setTouchPriority(LayerTouchPriority - 1)
0 0
- Cocos2dx Lua 关于Touch事件传递阻止下层传递的问题
- 关于Touch事件的传递问题
- 关于android touch事件的传递问题
- android-----touch事件的层级传递问题
- Touch事件的传递机制?
- Touch事件的传递机制
- Touch事件的传递机制
- hit-test的用法总结:如何阻止touch事件传递到子view
- 各种关于ViewGroup中touch事件传递引发的思考
- uiscrollview uicollectionview touch事件传递问题
- Touch事件传递,简记
- android touch事件传递
- Android Touch事件传递
- Android touch事件传递
- Android touch 事件传递
- Android Touch事件传递
- Android Touch事件传递
- Touch事件传递机制
- 今日温故知新
- GO MOBILE Increase Web Profits NOW!
- WebBrowser打开Word文档的一些注意事项
- C#带参数的线程说明
- SHELL : 数组模拟键值对
- Cocos2dx Lua 关于Touch事件传递阻止下层传递的问题
- 新手菜鸟学习C#的笔记总结 之接口
- 使用 Intel HAXM 为 Android 模拟器加速,媲美真机
- 442 - Matrix Chain Multiplication
- ZOJ-2613
- #define的基本用法(转载)
- C#关于操作符的重载
- poj 1769 Minimizing maximizer(线段树&dp)
- 整理sqlmap用法,大概地整合了一下,乱了点。