问题标签 [cclayer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
498 浏览

uiview - Cocos2d - 初始应用层在应用加载时显示不正确,在重新加载后正确显示

我正在使用 GameManager 单例来处理我的游戏所需的一些共享任务。其中一项任务是加载单个游戏场景。游戏启动时,无论我显示的哪个场景/图层组合出现错误;看起来项目相对于定位的坐标可能是错误的。

我选择哪一层并不重要——它们都显示不正确。如果您单击一个按钮并加载另一个场景/图层,然后返回到有问题的场景/图层,一切都会正确显示。这只发生在视网膜显示设备上,所以我认为这可能与我在游戏管理器中为不同显示类型设置的缩放比例有关。但是,更改 Retina 显示器的缩放比例会更糟(图层太小)。

这是我的 AppDelegate.h

应用委托.m

游戏管理器.h

游戏管理器.m

0 投票
1 回答
916 浏览

textfield - textFiled shouldChangeCharactersInRange 函数不起作用

我正在使用 cocos2d CClayer。

我制作了提交 TextField 类以使用提交名称。

我关注了一些博主并设法显示 textFiled,但 shouldChangeCharactersInRange 根本没有调用。

我如何调用 shouldChangeCharactersInRange?(我没有使用xib)

等待您的帮助。

代码如下。(在提交.h)

(在提交.m)

(在 GameLayer.h 中)

(在 GameLayer.m 中)

0 投票
1 回答
905 浏览

iphone - CCLayer setOpacity:] unrecognized selector

PopuupScene Layer

Error Message

Feb 22 11:06:31 unknown MyProject[443] : -[PopupScene setOpacity:]: unrecognized selector sent to instance 0xa68ca80 Feb 22 11:06:31 unknown MyProject[443] : * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[PopupScene setOpacity:]: unrecognized selector sent to instance

CCRGBAProtocol has setOpacity method, but error occurred...

How can I fade in & out CCLayer? (opacity animation, CCFadeIn & CCFadeOut)

0 投票
2 回答
468 浏览

xcode - Cocos2d 根据不同层的菜单填充层

我正在开发一个物种 ID 应用程序,并希望根据您在主图层上选择的动物来填充一个带有精灵的图层。我已经将每个动物都设为了一个菜单项,并且可以在按下按钮时显示我的信息层,但是如何设置它以便该层根据您选择的动物显示正确的数据?信息层不是一个全屏层,而是一个覆盖层,仅填充大约 75% 的屏幕,这就是为什么我要使用层而不是场景的原因。我知道我可以为每只动物(大约 50 个)创建一个新层并对其进行编码,以便每个按钮调用它自己的层,但我认为根据按下的按钮进行填充将使代码更简洁。如果按下 flamingoButton,则 sprite 将填充 flamingo.png 并且 label 填充 flamingo 信息。

MainLayer.m 代码:

SecondLayer.m(信息层)

0 投票
1 回答
712 浏览

cocoa - CCLayer 中的 Cocos2d 仅在应用程序首次运行时崩溃

我有最新的 cocos2d、Xcode4 和 iOS5 SDK。我正在我的 iPhone 4 (5.0.1) 上测试我的应用程序。模拟器上不会发生崩溃 - 仅在设备上。

在第一次运行时,我的应用程序在进入第一个场景之前崩溃了,它是由 CCTransitionFade 完成的。它在 CCLayer 中崩溃:

如果我再次加载该应用程序,它可以正常启动 - 没有崩溃。

我删除了 CCTransition 并在没有过渡的情况下启动了第一个场景,并且在第一次运行时我没有收到任何崩溃(太棒了!)。然而,在游戏过程中,有一点我在游戏场景的顶部放置了一个颜色层,并将颜色层的不透明度降低到 50% 左右。游戏在这里崩溃。

仅当应用程序首次运行时才会发生这些崩溃。两次崩溃都有共同的不透明性。在 CCLayer 中,两次崩溃都在同一行失败。

此崩溃发生在 iPhone 4 (iOS 5.0.1) 和 iPad (iOS 5.0.1) 上,但不是 iPhone 4 (iOS 4.2.1)。

有没有人有任何想法、想法或建议?我完全不知所措!

通过 xcode 在设备上运行的调试版本,在启动时崩溃:

3 月 6 日 23:36:53 未知 Boco[10699]:cocos2d:表面尺寸:640x960

3 月 6 日 23:37:08 未知 securityd[10702] :MS:注意:安装:(null)[securityd](675.00)

3 月 6 日 23:37:08 未知 ReportCrash[10700]:MS:注意:安装:(空)[ReportCrash](675.00)

3 月 6 日 23:37:09 未知 ReportCrash[10700]:为进程 Boco[10699] 制定崩溃报告

3 月 6 日 23:37:09 未知 com.apple.launchd[1] : (UIKitApplication:com.sunlight.boco[0x79a]) 错误:launchd_core_logic.c:3730 (25147):3

3 月 6 日 23:37:09 未知 com.apple.launchd[1] : (UIKitApplication:com.sunlight.boco[0x79a]) 假设作业已退出: : 10: 没有子进程

3 月 6 日 23:37:09 未知 com.apple.launchd[1] : (UIKitApplication:com.sunlight.boco[0x79a]) 作业似乎已崩溃:分段错误:11

3 月 6 日 23:37:09 未知 SpringBoard[10505]:应用程序“boco”异常退出,信号 11:分段错误:11

3 月 6 日 23:37:09 未知 ReportCrash[10700]:使用 uid:0 gid:0,synthetic_euid:501 egid 将崩溃报告保存到 /var/mobile/Library/Logs/CrashReporter/Boco_2012-03-06-233708_James-iPhone.plist : 0

在临时设备上运行的发布版本,在颜色层不透明度更改时崩溃

3 月 6 日 23:57:40 未知 ReportCrash[343]:MS:注意:安装:(null)[ReportCrash](675.00)

3 月 6 日 23:57:41 未知 ReportCrash[343]:为进程 Boco[338] 制定崩溃报告

3 月 6 日 23:57:41 未知 com.apple.launchd[1] : (UIKitApplication:com.sunlight.boco[0xe5d6]) 作业似乎已崩溃:总线错误:10

3 月 6 日 23:57:41 未知 SpringBoard[28]:应用程序“boco”异常退出,信号 10:总线错误:10

3 月 6 日 23:57:41 未知 ReportCrash[343]:使用 uid:0 gid:0,synthetic_euid:501 egid 将崩溃报告保存到 /var/mobile/Library/Logs/CrashReporter/Boco_2012-03-06-235740_James-iPhone.plist : 0

0 投票
1 回答
896 浏览

xcode - Cocos2d如何在不缩放图层的情况下缩放精灵?或者,如何缩放和裁剪精灵/图层?

iPad App 设置:SceneA 包含 layerA - 1024x768。按下 layerA 中的按钮,layerB 使用 CCMoveTo 动作从顶部下降。LayerB 只有 800x600,所以你可以看到它后面的 layerA(想想叠加的暂停屏幕类型效果)。LayerB 包含一个 800x600 的精灵,用户可以通过按下按钮来放大它。缩放效果只是 CCScaleTo 和 CCMoveTo 的组合,以使其保持在它正在放大的部分的中心。然而,当 sprite 缩放时,layerB 也会在 layerA 之上。有没有办法在包含的窗口中缩放精灵?

0 投票
1 回答
418 浏览

objective-c - cocso2d 像 Fieldrunners 一样捏缩放

我一直在尝试正确设置视差节点,但需要一些帮助。

这个http://goo.gl/Piqy5将是游戏的框架,对于视差节点区域,我有 3 层:背景层(可缩放但不可滚动,z 顺序 -1)第 1 层(z 顺序 1)第 2 层(z 阶 2)

我想我应该修复使用:

任何评论或帮助都会很棒!:)

0 投票
3 回答
1677 浏览

cocos2d-iphone - 卡片翻转效果

我正在 Cocos2D 中开始我的开发,我希望制作这张卡片效果,你可以在这部电影的 0:26 秒看到:

http://www.youtube.com/watch?v=7gn7Obeykm8 这个效果有什么特别的Cocos2D Transition吗?

0 投票
1 回答
369 浏览

iphone - 创建一个没有重力的空间环境,Box2d 与否?

我想创建一个有 4-5 个飞行物体的 cclayer,在屏幕上以随机方向飞行。我还希望那些飞行物体彼此透明,这意味着它们可以相互飞行。

我能想到的方法:

使用 Box2D

  1. 创建一个重力为 0 的 box2d 世界。并在屏幕边缘周围添加多边形静态地面。
  2. 给每个飞行物体一个初始力,让它们飞来飞去并在地面上反射。

问题:一段时间后物体仍然静止。不知道为什么。物体相互碰撞,不知道如何让它们相互飞过。

没有 Box2D

对每个对象使用 CCMove,检测它们是否到达屏幕边缘,计算它们移动的新路径。

有人可以指点我一个方向,哪种方式更容易?非常感谢。

0 投票
1 回答
663 浏览

cocoa-touch - CCLayer 子类上的点击检测问题

我有一个处理触摸事件的CCLayer子类:MyLayer

MyLayer我这样设置实例的内容大小:

然后我将MyLayer实例添加为ParentLayer. 出于某种原因,我可以点击屏幕上的任何位置MyLayer,并且一个实例会检测到点击。我只想检测可见部分/内容大小的点击。我怎样才能做到这一点?

这些MyLayer实例是否以某种方式从其他地方继承了“可点击区域”?我已经验证了contentSize刚刚点击的实例的(30, 30)符合预期。也许 contentSize 不是指定CCLayer子类的可点击区域的方法。