将CCMenu与UIView集成

时间:2012-06-03 13:22:47

标签: objective-c cocos2d-iphone

在我的CCScene中我添加了一些UILableUIPickerView它们效果很好,但是当我尝试添加CCMenu(cocos2d)时,我看不到它,或者,我可以看到一些东西覆盖我的标签,但没有看到按钮本身。

按钮的代码:

CCMenuItemImage *back = [CCMenuItemImage itemFromNormalImage:@"openBack.png" selectedImage:@"openBack.png" target:self selector:@selector(setMenu:)];
    back.position=ccp(300,300);
    back.tag=30;
    CCMenu *menu = [CCMenu menuWithItems:back,nil];  
    [self addChild:menu  z:100]; 

和UIKit的其他观点我添加:

[[[[CCDirector sharedDirector] openGLView] window] addSubview:activationCode];

我无法弄清楚openGL和cocos CCScene之间的联系。 有什么帮助吗?

2 个答案:

答案 0 :(得分:0)

你在Cocos2D中所做的一切都放在一个UIView中,假设你按照我的方式使用它。这意味着如果您稍后添加UIKit元素,它将显示在您在Cocos2D中完成的所有之上或之下。我们不能以复杂的方式交错UIKit和Cocos2D元素。

答案 1 :(得分:0)

Cocos2d是xCode的包装器,尤其适用于游戏开发。所以CCScene是cocos2d的一个元素,但是UIView属于xCode。你将所有东西放在一个视图上。

要使菜单可见,您可以将菜单放在视图之外。因为您可以指定视图的大小。使视图的矩形变小,以便您可以获得足够的空间放置菜单。

或者,如果您继续使用全屏尺寸的UIView,那么您可以使用更好的选项,例如UIButton,可以轻松添加到uiview中。