第一种方法MenuItemFont:
MenuItemFont::setFontName("Marker Felt");//设置字体
MenuItemFont *label = MenuItemFont::create("Shoot", this, menu_selector(GameSence::shootMenuCallback));//添加文字按钮
label->setScale(1.7);
label->setColor(ccc3(255, 0, 0));//设置颜色
Menu *newmenu = Menu::create(label,NULL); // 此步很关键,否则只是菜单项,但不能点击
newmenu->setPosition(Vec2(visibleSize.width - 150,
origin.y + visibleSize.height - 80));
this->addChild(newmenu, 2);
第二种方法createWithTTF:
Vector<MenuItem*> menuItems;
auto A = Label::createWithTTF("A", "fonts/arial.ttf", 36.0);
auto AMenuLabel = MenuItemLabel::create(A, CC_CALLBACK_1(HelloWorld::eventA, this));
AMenuLabel->setPosition(Vec2(origin.x + A->getContentSize().width, origin.y + A->getContentSize().height));
menuItems.pushBack(AMenuLabel);
auto S = Label::createWithTTF("S", "fonts/arial.ttf", 36.0);
auto SMenuLabel = MenuItemLabel::create(S, CC_CALLBACK_1(HelloWorld::eventS, this));
SMenuLabel->setPosition(Vec2(origin.x + S->getContentSize().width*4, origin.y + S->getContentSize().height));
menuItems.pushBack(SMenuLabel);
注意还有这一句:
auto menu = Menu::createWithArray(menuItems);
menu->setPosition(Vec2::ZERO);
this->addChild(menu, 1);