我想从带有一些文字的图像创建一个菜单项。图像是一个按钮,我必须在按钮上写下播放器的名称,所以我假设我必须同时使用 MenuItemImage 和 MenuItemFont。
也许我可以使用图像和文本创建一个 AtlasSprite,然后使用 MenuItemAtlasSprite 对象?如果是这样,我该如何创建该合成图像?
实现这一功能的推荐方法是什么?
谢谢水壶
我想从带有一些文字的图像创建一个菜单项。图像是一个按钮,我必须在按钮上写下播放器的名称,所以我假设我必须同时使用 MenuItemImage 和 MenuItemFont。
也许我可以使用图像和文本创建一个 AtlasSprite,然后使用 MenuItemAtlasSprite 对象?如果是这样,我该如何创建该合成图像?
实现这一功能的推荐方法是什么?
谢谢水壶
您直接添加到 UIView 而不是图层。我在场景中使用多个图层并切换它们,所以这对我不起作用,除非我隐藏基于可见图层的按钮。
我最终在 MenuItemImage 上放置了一个标签。我想到了对 MenuItemImage 进行子类化,但是 Cocos2d 有一个错误,它不会绘制所有子视图。
干杯
水壶
有什么理由不能只使用 UIButton?我正在使用 Cocos2D,但意识到普通的旧 UIButton 足以满足我的需求。
以下是我将按钮添加到 Cocos2D 层的方法:
UIView *myView = [[Director sharedDirector] openGLView];
UIButton *menuButton = [UIButton buttonWithType: UIButtonTypeRoundedRect];
[menuButton setTitle: @"Menu" forState: UIControlStateNormal];
menuButton.frame = CGRectMake(BUTTON_X(0), BOTTOM_BUTTON_ROW_Y, BUTTON_WIDTH, BUTTON_HEIGHT);
[menuButton addTarget: self action: @selector(menuButtonClicked:) forControlEvents: UIControlEventTouchUpInside];
[myView addSubview: menuButton];
[myView bringSubviewToFront: menuButton];
我只需创建一个 CCMenuItem 并向其中添加一个 CCSprite 和一个 CCLabelTTF。