我使用代码加载纹理图集:
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"zones.plist"];
CGSize screenSize = [CCDirector sharedDirector].viewSize;
sprite = [CCSprite spriteWithImageNamed:@"Z_11.png"];
sprite.position = ccp(screenSize.width * 0.5, screenSize.height * 0.5);
[self addChild:sprite];
但没有添加任何内容。 我也尝试过:
CCSpriteFrame *sf = [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:@"ZONE_2"];
sprite = [CCSprite spriteWithSpriteFrame:sf];
我收到错误:
'Invalid spriteFrame for sprite'
我做错了吗?
答案 0 :(得分:0)
如果zones.plist包含一个框架的定义,它可能是ZONE_2.png
(假设它是由一个工具,如TexturePacker生成的)。试试:
CCSpriteFrame *sf = [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:@"ZONE_2.png"];
编辑:
还要确保您拥有适合您计划支持的所有设备/显示模式的资源(即zones-hd.plist等...)。