Cocos2dx中的菜单用CCMenu/Menu类来实现。该类是一个容器。用来装载各种菜单项,用于菜单项能够是图片、系统字体等。
理论就不说了。先上代码:
CCMenuItemToggle* item1 = CCMenuItemToggle::createWithTarget(this, menu_selector(HelloWorld::menuItemToggle),
CCMenuItemFont::create("on1"), CCMenuItemFont::create("off1"),
CCMenuItemFont::create("on2"), CCMenuItemFont::create("off2"),
CCMenuItemFont::create("on3"), CCMenuItemFont::create("off3"),
CCMenuItemFont::create("on4"), CCMenuItemFont::create("off4"),
NULL);
CCMenuItemImage* item2 = CCMenuItemImage::create("CloseNormal.png", "CloseSelected.png", this, menu_selector(HelloWorld::menuItemToggle));
CCLabelTTF *lable = CCLabelTTF::create("CCLabelTTF", "fonts/arial", 32);
CCMenuItemLabel *item3 = CCMenuItemLabel::create(lable, this, menu_selector(HelloWorld::menuItemToggle));
CCMenu *menu = CCMenu::create(item1, item2, item3, NULL);
menu->alignItemsVerticallyWithPadding(10);
addChild(menu);
menu->setPosition(visibleSize.width / 2 - 100, visibleSize.height / 2 + 100);
同一时候定义回调函数:
void HelloWorld::menuItemToggle(CCObject *pSender)
{
CCLOG("HelloWorld::menuItemToggle");
return;
}
结果例如以下: