【Cocos2d游戏开发之六】对触屏事件追加讲解,解决无法触发ccTouchMoved事件[重要!]...

Himi 原创,转载请注明!

原文地址:http://blog.youkuaiyun.com/xiaominghimi/article/details/6671077


上一章节中介绍了,如何利用两种方式对用户触屏进行监听,那么今天要重点讲解一个问题;

要讲的问题主要是在使用注册监听(事件分配方式监听触屏)中的问题,上一章节中说过,此种方式首先要注册:如下代码:

//注册独立触摸事件 [[CCTouchDispatcher sharedDispatcher] addTargetedDelegate:self priority:0 swallowsTouches:YES];

那么如果多个注册监听的话,可以根据优先级(priority)参数进行设置,此参数的值越大,优先级越低,假设有XX与YY注册了监听,如果XX优先级>YY的话,那么首先会进入XX的监听函数;

使用上面的方式进行监听的话,会进行监听以下这几个事件:

- (BOOL)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event { return NO; } - (void)ccTouchMoved:(UITouch *)touch withEvent:(UIEvent *)event { } - (void)ccTouchEnded:(UITouch *)touch withEvent:(UIEvent *)event { }

如果XX中的ccTouchBegan函数中返回Yes的话,就不会响应其他监听的(YY)中重写的监听函数;这个上一章节中介绍过;但是要说的也正是这里,如果你想要XX与YY都监听事件,那么两个都可以在ccTouchBegan中返回NO,但是如果你想在处理YY或者XX中的ccTouchMoved移动事件函数中的话,你会发现XX与YY都不会响应其函数,原因是,当你retrun NO;的时候虽然执行了ccTouchBegan与return之间的代码,但是你return NO其实就是告诉cocos2d放弃此次事件处理,让cocos2d继续将触屏事件分配给其他注册过的类去处理监听,直到结束或者cocos2d获取到return true为止;

那么解决的方案:比如你想监听YY类中的ccTouchMoved事件,那么为了不影响XX中的监听ccTouchBegan事件,你应该让XX类在注册监听的时候让其优先级调整高于YY类,并且XX类中ccTouchBegan函数return NO,那么当用户触屏后,首先进入XX类中处理事件,然后会(因为XX类return NO)进入YY类,那么在YY类的ccTouchBegan函数中因为return YES;这样cocos2d就能响应ccTouchMoved函数了;

如果说你想让XX与YY类都响应ccTouchMoved函数,至少我利用此种事件分配的方式无法实现,不知道是不是cocos2d的1.0版本遗留的BUG还是其他原因,今天遇到所以拿出来跟大家分享;

OK,该睡觉了,晚安大家~撒乐个油!~~~~~~




《谷歌数据分析方法》脑图笔记 目录壹、脑图笔记贰、《谷歌数据分析方法》脑图文稿[^1]一、 反思数据分析二、选择数据分析工具的最佳策略第一步:选择数据分析工具前要回答的3个关键问题第二步:选择数据分析工具前要问供应商的10个问题第三步:如何有效地试用数据分析工具第四步:确定合作前的协议,检查供应商的服务条款三、点击流分析的精彩世界:指标8个关键网站指标数据分析指标揭秘关键网站指标的战略性策略四、成功的关键:衡量绩效关注“少数关键指标”衡量非电子商务网站的成功衡量B2B网站五、调研和测试永不过时的3个最佳调研问题选择线上调研供应商的8个建 阅读详情

相关推荐

【汽车主动降噪】【ANC算法优化】基于深度学习的汽车主动噪声控制技术研究及Matlab实现

本文探讨了基于深度学习的汽车主动降噪(ANC)算法优化方案。针对传统FXLMS算法在应对复杂、非线性车内噪声时的局限性,文章详细解析了如何利用神经网络作为非线性建模器、深度滤波器或智能步长调节器来增强ANC系统性能,并提供了完整的Matlab仿真实战流程,展示了深度学习在提升降噪效果和收敛速度方面的潜力。

seed的博客 540

cocos Pc触摸屏端发布 浏览器不支持 touchmove 事件

游戏版本: cocos creator 2.4.3 触摸屏上发布 pc端或手机端 后支持touchstart 和touchend 事件,不支持touchmove事件,解决方法 1、找到cocos creator 的引擎库下的 CCSys.js 2、右击打开 检索var capabilities = 在下面如图添加capabilities["touches"] = true; 关闭保存 打开 cocos引擎 选择开发者下的 编译引擎 或快捷键 (ctrl + F7) 然后重新构建...

哈哈哈的博客 1058

PCIe链路训练Recovery状态机:从RcvrLock到链路稳定的关键路径

本文深入解析PCIe链路训练中的Recovery状态机,特别是RcvrLock状态的关键作用。从Block对齐、均衡预设值应用到状态转移条件,详细介绍了确保链路稳定的技术要点,并提供了高速率下的特殊处理方法和常见问题排查指南,帮助工程师解决PCIe链路不稳定问题。

weixin_28739079的博客 175

cocos无法支持touchmove解决办法

触摸屏上发布 pc端或手机端 后支持touchstart 和touchend 事件,不支持touchmove事件,解决方法

weixin_42253927的博客 658

STM32入门教程:智能汽车控制

智能汽车是近年来快速发展的领域之一,它结合了嵌入式系统、传感器和通信技术,通过智能化的控制算法和决策系统实现自主导航、避障、环境感知等功能。在这篇教程中,我们将以 STM32 微控制器为核心,通过编写代码案例来介绍智能汽车的控制原理和实现方法。步骤三:决策与执行 最后,我们根据传感器数据做出相应的决策,并执行相应的动作。案例:智能汽车的避障功能 在这个案例中,我们将实现智能汽车的避障功能。感知系统负责感知汽车周围的环境,包括障碍物的距离、车辆的角度等信息。下面我们通过一个具体的案例来演示代码的编写。

2401_85258012的博客 929

使用AutoDL云服务器训练YOLO计算机视觉网络模型(AutoDL+Xftp+VS Code),附详细操作步骤

AutoDL AI算力云是一个提供人工智能算力服务的云平台。丰富的GPU资源:提供多种GPU型号,包括NVIDIA的A100A800L40V100RTX 4090RTX 3090等,能满足我们在不同场景下的需求,无论是进行大规模的AI训练还是复杂的科学计算等任务,都可以找到合适的GPU资源。灵活的付费方式:支持按量付费包日包周包月等多种付费模式。对于短期的实验或不确定时长的项目,可以选择按量付费;如果有长期稳定的算力需求,预付费或包周包月则可能更划算,可以根据自己的需求和预算进行选择。集成主流框架:集成了。

Limiiiing的博客 959

cocos2dx触屏响应(单点触摸)CCTouchBegan,CCTouchMove,CCTouchEnd

今天白白跟大家分享一下cocos2dx单点触摸经验。 cocos2dx触摸CCTouch类的单点触摸有四个函数CCTouchBegan,CCTouchMove,CCTouchEnd,CCTouchCancalled。 这些触摸的函数不一定每一个都要响应,可是CCTouchBegan是一定要有的,他的返回值是bool,其他函数返回值为void 以下我们看看怎样触摸: 首先我们新建一个...

weixin_33726943的博客 236

EuROC 数据集格式及相关代码

Euroc提供ROS和zip两种数据格式。

~勿据散客~的博客 2093

ios事件之触摸事件

一、iOS事件 1.事件:当我们在手机上点击手机屏幕、滑动手机翻页、摇动手机的时候,手机会做出一些反应,对应的在应用程序里实现了某些代码的某些功能,完成这个过程就是一个事件。 2.iOS事件类型大致分为三大类型: (1)触摸事件,比如点击照片放大、点击按钮等。 (2)加速计事件,比如微信摇一摇,通过手机的运动,实现某些功能。 (3)远程控制事件,比如插图中

LXL_815520的博客 1448

基于opencv人脸识别实现课堂抬头率检测系统 完整代码 可直接运行 作为毕设

基于opencv人脸识别实现课堂抬头率检测系统 完整代码 可直接运行 作为毕设

机器学习深度学习业余选手 1146

人工智能---什么是Transformer?

Transformer是一种强大的神经网络架构,最初由Google的研究人员在论文《Attention is All You Need》中提出,用于自然语言处理任务,特别是在机器翻译方面取得了巨大成功。Transformer的核心思想是完全基于自注意力机制(self-attention mechanism)来实现序列到序列(sequence-to-sequence)的学习。它在自然语言处理(NLP)和其他序列到序列任务中表现出色,逐渐成为该领域的主流模型。近些年也逐渐在自动驾驶领域有所应用。

智能汽车人的博客 3955

CocosCreator TOUCH_MOVE事件

注册事件 在onDestroy里注销本事件 onLoad() { this.node.on(cc.Node.EventType.TOUCH_MOVE, this._touchMove, this); } protected onDestroy(): void { this.node.off(cc.Node.EventType.TOUCH_MOVE, this._touchMove, this); } 绑定的事件,里面可以获取到的一些参数 private _touchMove(e) { co.

Dust的博客 5352

Python经典编程习题100例:第25例:求各个阶乘的和

不要自卑,去提升实力 互联网行业谁技术牛谁是爹 如果文章可以带给你能量,那是最好的事!请相信自己 加油o~ 本人初学Python,只为熟悉语法编写,大神请勿理会 点击下面链接 Python经典编程100例习题汇总 题目描述: 求1+2!+3!+…+20!的和。 解题思路: > 调用math模块中的factorial函数 代码: import math sum=0 for i in range(1,21): sum+=math.factorial(i) print(sum) ..

优快云 精品推荐 2736

【iOS-Cocos2d游戏开发之六】对触屏事件追加讲解,解决无法触发ccTouchMoved事件[重要!]

李华明Himi 原创,转载务必在明显处注明:转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/iphone-cocos2d/453.html上一章节中介绍了,如何利用两种方式对用户触屏进行监听,那么今天要重点讲解一个问题;要讲的问题主要是在使用注册监听(事件分配方式监听触屏)中的问题,上一章节中说过,此种方式首先要注册:如下代码: //注册独立触摸事件

李华明Himi 1万+

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

【Cocos2d游戏开发之六】对触屏事件追加讲解,解决无法触发ccTouchMoved事件[重要!] ...

上一章节中介绍了,如何利用两种方式对用户触屏进行监听,那么今天要重点讲解一个问题; 要讲的问题主要是在使用注册监听(事件分配方式监听触屏)中的问题,上一章节中说过,此种方式首先要注册:如下代码:   view plain //注册独立触摸事件   [[CCTouchDispatcher sharedDispatcher] addTargetedDelegate:self ...

既是过河之卒,惟有奋力向前。 174

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

【Cocos2d游戏开发之六】对触屏事件追加讲解,解决无法触发ccTouchMoved事件[重要!]

上一章节中介绍了,如何利用两种方式对用户触屏进行监听,那么今天要重点讲解一个问题; 要讲的问题主要是在使用注册监听(事件分配方式监听触屏)中的问题,上一章节中说过,此种方式首先要注册:如下代码: view plaincopy to clipboardprint?

李天泉 382

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

【iOS-Cocos2d游戏开发之六】对触屏事件追加讲解,解决无法触发ccTouchMoved事件[重要!]...

为什么80%的码农都做不了架构师?>>> ...

weixin_34186950的博客 86

【IOS-COCOS2D游戏开发之六】对触屏事件追加讲解,解决无法触发CCTOUCHMOVED事件[重要!]...

本站文章均为李华明Himi原创,转载务必在明显处注明:转载自【黑米GameDev街区】 原文链接:http://www.himigame.com/iphone-cocos2d/453.html 上一章节中介绍了,如何利用两种方式对用户触屏进行监听,那么今天要重点讲解一个问题; 要讲的问题主要是在使用注册监听(事件分配方式监听触屏)中的问题,...

weixin_33982670的博客 83

【iOS-Cocos2d游戏开发之六】对触屏事件追加讲解,解决无法触发ccTouchMoved事件[重要!...

上一章节中介绍了,如何利用两种方式对用户触屏进行监听,那么今天要重点讲解一个问题; 要讲的问题主要是在使用注册监听(事件分配方式监听触屏)中的问题,上一章节中说过,此种方式首先要注册:如下代码: view plain //注册独立触摸事件 [[CCTouchDispatchersharedDispatcher]addTargete...

weixin_34267123的博客 91

Cocos2d-x学习(三):触屏事件(单点触屏)

cocos2d-x中的触屏事件分为多点触屏和单点触屏,而多点触屏用到的地方并不是很多,所以先主要记录一下单点触屏的用法和基本原理。 一般经常用到的触屏的情况有两种:一种是Layer统一接收触屏消息,然后由程序根据需要分发给不同位置的精灵;另一种情况是自定义一个可以接收触屏消息的Sprite,比如类似于Button功能的Sprite,这就需要在定义Sprite的时候就要定义好触屏所触发的操

oneRain88的专栏 2万+
上一篇: 【Android游戏开发二十六】追加简述SurfaceView 与 GLSurfaceView效率!
下一篇: 【Cocos2d游戏开发之七】在cocos2d中添加/删除系统组件,并解决View设置透明会影响View中的其他组件的问题!...
iteye_6921
博客等级 码龄8年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值