我正在尝试使用Image&创建一些菜单项标签,使用barry's class
CGRect menuItemRect = CGRectFromString([[myAtlas objectForKey:@"menuItem.png"] objectForKey:@"textureRect"]);
CCSprite *normalMenuItemSprite = [CCSprite spriteWithBatchNode:batchNode rect:menuItemRect];
CCSprite *selectedMenuItemSprite = [CCSprite spriteWithBatchNode:batchNode rect:menuItemRect];
CCMenuItemLabelAndSprite *aMenuItem = [CCMenuItemLabelAndSprite itemWithLabel:itemLabel normalSprite:normalMenuItemSprite selectedSprite:selectedMenuItemSprite];
CCMenu *myMenu = [CCMenu menuWithItems:aMenuItem, nil];
myMenu.anchorPoint = ccpzero;
myMenu.position = ccp(330,280);
[myMenu alignItemsHorizontallyWithPadding:100];
[self addChild:myMenu];
如果CCSprite由CCSpriteBatchNode呈现,则CCSprite#draw应该不应该被调用是我的日志中显示的错误
我知道我不能在CCSprites旁边添加任何其他对象到CCSpriteBatchNode但是我该如何处理这种情况呢?
答案 0 :(得分:1)
尝试使用spriteWithSpriteFrameName
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"myAtlas.plist"];
CCSprite *normalMenuItemSprite = [CCSprite spriteWithSpriteFrameName:@"menuItem.png"];