【COCOS2D-X 备注篇】cocos2dx 获取手机截屏等意外取消触屏事件的处理方法!

本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi 
转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/iphone-cocos2d/1513.html
 

          ☞ 点击订阅 ☜
 本博客最新动态!及时将最新博文通知您!


                 

最近有童鞋问我如何获取到iphone手机截屏的事件,所以本篇就简单的聊下这种问题的处理办法。

在cocos2dx引擎中,我们能在AppDelegate中获取到,用户将应用切入后台,以及重新返回应用的事件函数。那么对应的,cocos2dx也在引擎中给予我们截取屏幕等这种只能手机应有事件的处理函数。

其实大家应该都很熟悉截取用户触屏的函数,如下:

1
2
3
4
// default implements are used to call script callback if exist
virtual bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent);
virtual void ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent);
virtual void ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent);

如上三个函数:

1.touchBegan:获取用户刚触屏事件的函数。

2.touchMoved:获取用户滑动屏幕事件的函数。

3.touchEnded:获取用户离开屏幕事件的函数。

其实细节的童鞋,或者不理解的童鞋可能都看到了,其实触屏事件还有一个函数可继承重写:

    virtual void ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent);

      此函数 touchCancelled 的作用是获取意外事件造成触屏事件取消的函数。其实这个函数不仅能获取截屏等意外造成触屏取消的事件之外,还能有效的避免多触点之间造成程序异常的问题。

              另外Himi建议重写触屏函数时,务必重写 ccTouchCancelled 函数,以避免意外事件的发生,造成程序崩溃!

 

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值