0

PopuupScene Layer

@interface PopupScene : CCLayer <CCRGBAProtocol>

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)

4

1 回答 1

0

CCLayer 没有实现该协议(查看 CCLayer.h)。如果您“真的”需要在图层上设置透明度,则必须手动进行(正如@Ravin 建议的那样)。基本上声明并实现一个 setOpacity 方法,并在该方法中执行您认为必须执行的操作来设置图层的不透明度。如果您的图层嵌入了叠加的 sprite 和其他未实现协议的对象,您可能会发现获得您尝试完成的结果可能会很棘手。

我刚刚发现 (urghhh) 如果你使用 cocos2d 版本 1.0.1 ,有一个

CCLayerColor 是实现 CCRGBAProtocol 协议的 CCLayer 的子类。

CCLayer 的所有功能都有效,此外还有以下新功能:

不透明度

RGB 颜色

于 2012-02-22T04:45:54.290 回答