六、CCLayer

本文介绍了Cocos2d-x中的CCLayer类,包括其作为游戏图层的角色,如何接收触摸和加速计输入。CCLayer默认不接收触摸和加速计输入,可通过设置isTouchEnabled和isAccelerometerEnabled开启。CCLayerColor用于设置单一背景颜色,CCLayerGradient支持渐变色,而CCLayerMultiplex则允许在多个图层间切换。
摘要由CSDN通过智能技术生成

  一个游戏中可以有很多个场景,每个场景里面又可能包含有多个图层,这里的图层一般就是CCLayer对象。CCLayer本身几乎没什么功能,对比CCNode,CCLayer可用于接收触摸和加速计输入。其实,cocos2d对图层并没有严格的要求,图层不一定要使用CCLayer类,它也可以是一个简单的CCNode,为什么呢?我们新建一个图层不就是为了能够容纳更多的子节点么,CCNode也可以添加子节点啊。所以,如果你的图层不需要接收触摸和加速计输入,就尽量使用CCNode表示图层,CCLayer因为能够接收触摸和加速计输入会增加不必要的开销。移动、缩放、旋转整个图层,图层上的所有节点也会跟着一起移动、缩放、旋转。


常用设置

1.接收触摸输入

CCLayer默认情况是不接收触摸输入的,需要显示地设置isTouchEnabled为YES

self.isTouchEnabled = YES;
设置isTouchEnabled为YES后,就会调用图层相应的方法来处理触摸输入:

这些都是在CCStandardTouchDelegate协议中定义的方法

1> 当单指接触到屏幕时

- (void)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;

2> 当手指在屏幕上移动时

- (void)ccTouchesMoved:(NSSet *)touches withEvent:(UIEvent *)event;

3> 当单指离开屏幕时


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值