0

我使用 Kobold2D + TexturePacker(目前都是最后一个版本)。

当我使用 spriteWithFile: 方法创建一个 CCSprite 对象并按原样放置时,它看起来很好。

CGSize screenSize = [CCDirector sharedDirector].winSize;

background = [CCSprite spriteWithFile:@"dir_bg.png"];
background.position = CGPointMake(screenSize.width - background.texture.contentSize.width / 2 - 10, background.texture.contentSize.height / 2 + 10);

[self addChild:background];

controller = [CCSprite spriteWithFile:@"dir_big.png"];
controller.position = background.position;

[self addChild:controller];

spriteWithFile:

但是使用不同的方法,使用 spriteWithSpriteFrameName: 加载纹理时,对象不会按应有的方式放置。

[CCTexture2D PVRImagesHavePremultipliedAlpha:YES];
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"Textures.plist"];

CGSize screenSize = [CCDirector sharedDirector].winSize;

background = [CCSprite spriteWithSpriteFrameName:@"dir_bg.png"];
background.position = CGPointMake(screenSize.width - background.texture.contentSize.width / 2 - 10, background.texture.contentSize.height / 2 + 10);

[self addChild:background];

controller = [CCSprite spriteWithSpriteFrameName:@"dir_big.png"];
controller.position = background.position;

[self addChild:controller];

spriteWithSpriteFrameName:

为什么?

4

1 回答 1

0

而是background.texture.contentSize.width使用background.contentSize.width等等。

来源:如何在cocos2d for iphone中获取CCSprite的宽高

于 2013-02-15T12:10:22.123 回答