有没有办法改变已经用另一个图像初始化过的 Sprite 的图像?
我试过:
最佳答案
有。在内部,spriteNodeWithImageNamed:
类方法仅使用您为其传递的图像名称来设置节点的texture属性。话虽如此,如果您想随时更改节点的纹理,则可以直接设置它。
[self.sprite setTexture:[SKTexture textureWithImageNamed:@"someOtherImage"]];
如果您希望节点在不同纹理之间调整大小或设置动画,还可以使用一些SKAction来执行此操作。
[self.sprite runAction:[SKAction setTexture:[SKTexture textureWithImageNamed:@"someOtherImage"] resize:YES]];
[self.sprite runAction:[SKAction animateWithTextures:@[tex1,tex2,tex3] timePerFrame:0.5 resize:YES restore:YES]];