cclayer的区域
来源:互联网 发布:网络存储服务器 编辑:程序博客网 时间:2024/04/30 02:46
(转载请注明原文地址:http://blog.csdn.net/while0/article/details/11130379)
作为CCSprite或CCNode的容器,CCLayer的边界在哪里,它所管辖的区域有多大呢? 如果精灵加入到CCLayer中,位置位于层的边界外,会不会显示不出来呢?
其实这里或多或少会有点误区,实际上可以理解为CCLayer是没有边界的,一个精灵作为子节点加入到层中,可以位于任何位置,能不能显示出来,决定于它是不是位于屏幕之内。
CCLayer作为从CCNode的继承而来的类,它也有ContentSize,也有AnchorPoint。但是它的ContentSize并不代表它的显示区域大小,CCNode不像精灵类,有纹理可以绘制,这个能真正的称作Content。 而CCLayer是个容器,本身并不可见。ContentSize和AnchorPoint的值共同来决定它的位置,除此以外没有任何作用。注意:AnchorPoint发生作用,需要在层初始化时加上这么一句:ignoreAnchorPointForPosition(false)。
CCLayer默认的ContentSize是屏幕大小,我们一般没有必要修改它的ContentSize。 如上图:蓝框就是未修改前的Layer的ContentSize,区域等于屏幕大小,左下角的位置为(0,0)。如果调用setContentSize修改,它的大小为红框区域,这个新的区域一定是以(0,0)为起点的。
为什么说ContentSize也能影响CCLayer的位置呢? 分两种情况:
(1) 如果它的anchor point位于(0,0),改变ContentSize不会影响它的位置。
(2) 如果anchor point在其它点,改变ContentSize就会影响它的位置。例如:anchor point = (0, 1),没有改变ContentSize之前,anchor point在蓝框的左上角位置,改变后,在红框的左上角的位置。所以同样在调用setPosition设置它的位置时,结果是不一样的。
- cclayer的区域
- 谈谈CCLayer的区域到底有多大?
- CCLayer 指定显示区域
- CCLayer 指定显示区域
- CCLayer 指定显示区域
- CCLayer 指定显示区域
- CCLayer 指定显示区域
- CCLayer中如何 控制只显示特定的区域
- CCLayer中如何 控制只显示特定的区域
- CCLayer 如何 控制 只显示 特定的区域
- 只显示CCLayer部分特定区域的方法
- cocos2d-x CCLayer可视区域
- 裁剪cclayer,显示特定区域
- CCLayer自定义裁切区域
- CCLayer调整触摸区域的大小 接受触摸事件 调整优先级等的理解
- CCLayer initWithColor的问题
- 实现CCLayer只显示一个矩形可见区域
- cclayer的触摸处理(ccTouch)
- 线性判别分析(Linear Discriminant Analysis, LDA)算法分析
- OCP-1Z0-053-V12.02-20题
- 善用eclipse模板功能,有效提高編碼效率
- 把文件存储到sdcard中
- grails学习笔记-文件上传
- cclayer的区域
- 主题模型-LDA浅析
- 数据库命名规范(表、字段名)
- Day10_函数形参及文件操作
- 监控ContentProvider的数据改变
- Day11_递归、变量生命周期及作用域
- POJ 2947 Widget Factory
- 红黑树(red_black_tree)的c语言实现
- zoj 3717 Balloon(二分+2-SAT)