Cocos2d-x 菜单项
Cocos2d-x的菜单中提供了多种菜单项的生成方式,他们都继承于CCMenuItem,如下图:
但是这些CCMenuItem及其子类是不能直接添加到显示列表中的,要必须把他们封装到CCMenu中,把CCMenu添加到显示列表显示。下面来看一下CCMenu的继承关系,如下图:
实例代码如下:
1 CCMenuItemImage *pCloseItem = CCMenuItemImage::create( 2 "CloseNormal.png", 3 "CloseSelected.png", 4 this, 5 menu_selector(HelloWorld::menuCloseCallback)); 6 CC_BREAK_IF(! pCloseItem); 7 8 // Place the menu item bottom-right conner. 9 10 CCSize size = CCDirector::sharedDirector()->getWinSize(); 11 12 pCloseItem->setPosition(ccp(size.width / 2, size.height / 2)); 13 14 // Create a menu with the "close" menu item, it's an auto release object. 15 CCMenu* pMenu = CCMenu::create(pCloseItem, NULL); 16 pMenu->setPosition(CCPointZero); 17 CC_BREAK_IF(! pMenu); 18 19 // Add the menu to HelloWorld layer as a child layer. 20 this->addChild(pMenu, 1);
效果如下图: