使用Cocos2d创建菜单和键盘

时间:2010-08-07 17:16:52

标签: iphone objective-c cocos2d-iphone

我只是使用cocos2d CCMenuItem为iphone应用创建一个菜单。现在我还没有使用cocos2d,所以我可能会完全采用这种方式,所以希望有人可以指出我正确的方向。

CCMenuItem *mainMenuItem = [CCMenuItemImage itemFromNormalImage:@"Main Menu Up.png" selectedImage:@"Main Menu Down.png"
                                                                 target:self
                                                               selector:@selector(back:)];



CCMenu *soundMenu = [CCMenu menuWithItems:mainMenuItem, nil];

现在这很好并且一切正常但是我可以说我有大量的菜单按钮要添加我是否必须以这种方式添加它们或者是否可以创建一个nsmutablearray并将所有菜单项添加到它然后一次性将数组添加到soundmenu。

NSRange range = NSMakeRange(1, 10);
id *buffer = malloc(10 * sizeof(id));

CCMenu *soundMenu = [CCMenu menuWithItems:[myKeyboard getObjects:buffer range:range],nil];
像那样的东西?现在当然这对我来说无效使用void表达式错误。我甚至不确定它甚至可以做我正在尝试的事情,所以任何提示都会非常感激。

此外,我需要使用cocos2d创建一个自定义键盘,如果有人有任何提示或建议,将非常感激。我没有真正运气使用谷歌我不断获得使用Interface Builder的代码,我不是它的粉丝。有没有办法只使用cocos2d创建键盘? 谢谢大家 ģ

1 个答案:

答案 0 :(得分:0)

你不必完成所有这些。只需创建您的CCMenuItems,然后将它们全部添加到CCMenu中:

CCMenu *soundMenu = [CCMenu menuWithItems:mainMenuItem,anotherMenuItem, yetAnotherMenuItem, nil];

至于键盘部分,我认为你应该搜索/打开另一个问题。无论如何,简单的方法是将UITextField视图添加到OpenGL视图中,让UIKit处理所有键盘内容。

困难的方法是创建自己的精灵和所有的键盘,但你必须处理所有的显示/隐藏,事件,回调等。当然,如果做得好,你将获得更好的性能的好处。