From: http://blog.linguofeng.com/archive/2012/11/14/cocos2d-x-CCMenu.html
一、CcmenuItemSprite精灵按钮
CCSprite * normal = CCSprite::spriteWithFile("默认状态的图片"); CCSprite * selected = CCSprite::spriteWithFile("选中状态的图片"); CCSprite * disabled = CCSprite::spriteWithFile("禁用状态的图片"); CcmenuItemSprite * item = CcmenuItemSprite::itemFromnormalSprite(normal, selected, disabled, this, menu_selector(Test::callback)); // itemFromnormalSprite(normal,selected,disabled); // itemFromnormalSprite(normal,this,menu_selector(Test::callback)); // itemFromnormalSprite(normal,selected); item->setIsEnabled(false); // 是否可用,默认true
CcmenuItemImage * item = CcmenuItemImage::itemFromnormalImage("默认状态", "选中状态", menu_selector(Test::callback)); // itemFromnormalImage("默认状态","选中状态"); // itemFromnormalImage("默认","选中","禁用",menu_selector(Test::callback)); // itemFromnormalImage("默认","禁用");
三、CcmenuItemLabellabel按钮
// 支持cclabelAtlas、cclabelBMFont cclabelAtlas * label = cclabelAtlas::labelWithString("123", "nums.png", 24, 30, ''); CcmenuItemLabel * item = CcmenuItemLabel::itemWithLabel(label, menu_selector(Test::callback)); // itemWithLabel(label); item->setdisabledColor(ccc3(255, 255, 255)); item->setColor(ccc3(0, 0, 0));
四、CcmenuItemFont字体按钮
CcmenuItemFont * item = CcmenuItemFont::itemFromString("文本", menu_selector(Test::callback)); // itemFromString("文本"); item->setFontSizeObj(24); item->setFontName("Monaco"); // 全局字体与大小 CcmenuItemFont::setFontSize("全局字体大小"); CcmenuItemFont::setFontName("全局字体名称");
五、CcmenuItemToggle开关式按钮
CcmenuItemToggle * item = CcmenuItemToggle::itemWithTarget(this, menu_selector(Test::callback), CcmenuItemFont::itemFromString("On"), CcmenuItemFont::itemFromString("Off"), NULL); item->getSubItems()->addobject(CcmenuItemFont::itemFromString("Other")); item->setSelectedindex(2);
六、Ccmenu
Ccmenu * menu = Ccmenu::menuWithItems(item1, item2, NULL); menu->alignItemsHorizontally(); // 垂直对齐 menu->alignItemsvertically(); // 水平对象 menu->alignItemsInColumns(2, 1, NULL); // 两行,两列,一列
七、callback
Test::callback(CCObject * sender) { }