CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("Menus.plist", "Menus.png");
CCMenuItemSprite *item = CCMenuItemSprite::itemFromNormalSprite(
CCSprite::spriteWithSpriteFrameName("menu-normal.png"); //menu-normal.png is packed in Menus.plist & Menus.png
CCSprite::spriteWithSpriteFrameName("menu-selected.png");
CCSprite::spriteWithSpriteFrameName("menu-disabled.png");
this,
menu_selector(MyLayer::menuCallback) );
The theory is to load packed plist & png into CCSpriteFrameCache, then create sprites from this cache, use these sprites in CCMenuItemSprite. Current APIs can do this as you wish, but we need to type in more characters.