CCMenuItemSprite —CCMenuItemImage::create无法显示全部菜单项的解决办法![待续]
使用CCMenuItemImage::create发现无法显示全菜单项,cocos2d-x2.2.6 有2个不能显示,2.1.4版本干脆都不显示。
解决办法用CCMenuItemSprite::create()方法.
//创建SpriteFrameCache CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile(“mainscene1.plist”);
CCSprite* bg = CCSprite::createWithSpriteFrameName("mainbg.png");
//CCMenuItemSprite 方法
//创建Btn精灵图片
CCSprite* adventureBtnNormal = CCSprite::createWithSpriteFrameName(“btn_adventure_normal_CN.png”);
CCSprite* adventureBtnPressed = CCSprite::createWithSpriteFrameName(“btn_adventure_pressed_CN.png”);
//创建菜单项
CCMenuItemSprite* adventureBtn = CCMenuItemSprite::create(adventureBtnNormal,adventureBtnPressed,this,menu_selector(HelloWorld::selMenuCallBack));
//给菜单项 setTag 为selMenuCallBack函数使用
adventureBtn->setTag(MENU_ID_ADVENTURE_MODE);
//给菜单项定位置 bgSize 为 作为背景精灵的ContentSize
adventureBtn->setPosition(ccp(bgSize.width * 20 / 100,bgSize.height * 12 / 100.0));
//照此建出所有菜单项
//生成菜单
CCMenu* welMenu = CCMenu::create(adventureBtn,bossBtn,nestBtn,settingBtn,helpBtn,NULL);
//设置位置 welMenu->setPosition(CCPointZero); //添加到背景 bg->addChild(welMenu,20);