3

我的 iOS 项目中有一段代码通过 setTexture 交换 CCSprite 的纹理,如下所示:

[sprite setTexture:[[CCTextureCache sharedTextureCache] addImage:@"Circle.png"]];

但是,CCSprite 的纹理在交换前后的尺寸不同,因此 Circle.png 纹理被裁剪;停留在原始纹理的大小(因为圆圈更大)。

交换纹理后如何调整大小?

相关,但无助于解决此问题

4

2 回答 2

9

试试这个:

CCTexture2D* texture = [[CCTextureCache sharedTextureCache] addImage:@"Circle.png"];

    if (texture)
    {
                // Get the size of the new texture:
        CGSize size = [texture contentSize];

        [sprite setTexture:texture];
                // use the size of the new texture:
        [sprite setTextureRect:CGRectMake(0.0f, 0.0f, size.width,size.height)];
     }
于 2012-04-20T15:28:08.987 回答
0

您可以使用 spriteWithFile 构造函数重新创建精灵。尺寸将自动设置

于 2012-04-19T11:55:01.723 回答