我已经创建了一个动画,它在模拟器上运行得很好,但是当我使用我的设备时,屏幕上出现了一个大的十字。我收到了下面的日志信息。
SKTexture: Error loading image resource: "Bird1"我已经检查过所有的纹理都在捆绑资源中。为什么它不会出现在设备上?
SKTexture* birdTexture1 = [SKTexture textureWithImageNamed:@"Bird1"];
birdTexture1.filteringMode = SKTextureFilteringNearest;
SKTexture* birdTexture2 = [SKTexture textureWithImageNamed:@"Bird2"];
birdTexture2.filteringMode = SKTextureFilteringNearest;
SKTexture* birdTexture3 = [SKTexture textureWithImageNamed:@"Bird3"];
birdTexture3.filteringMode = SKTextureFilteringNearest;
SKTexture* birdTexture4 = [SKTexture textureWithImageNamed:@"Bird4"];
birdTexture4.filteringMode = SKTextureFilteringNearest;
SKTexture* birdTexture5 = [SKTexture textureWithImageNamed:@"Bird5"];
birdTexture5.filteringMode = SKTextureFilteringNearest;
SKTexture* birdTexture6 = [SKTexture textureWithImageNamed:@"Bird6"];
birdTexture6.filteringMode = SKTextureFilteringNearest;
SKAction *flap = [SKAction repeatActionForever:[SKAction animateWithTextures:@[birdTexture1, birdTexture2, birdTexture3, birdTexture4, birdTexture5, birdTexture6] timePerFrame:0.15]];
SKSpriteNode *mover = [SKSpriteNode spriteNodeWithTexture:birdTexture1];
[mover setScale:1.0];
mover.position = CGPointMake(self.frame.size.width / 2, self.size.height-120);
[mover runAction:flap withKey:@"birdGo"];
[self addChild:mover];发布于 2014-05-05 11:02:01
您试过像下面这样的扩展名吗?
SKTexture* birdTexture1 = [SKTexture textureWithImageNamed:@"Bird1.png"];否则,尝试另一个方法,如下所示
SKTexture * texture = [SKTexture textureWithImage:[UIImage imageNamed:@"rocket.png"]];发布于 2014-07-17 18:50:57
试着清洁你的项目:产品->清洁。当您测试项目以加速编译时,XCode会缓存图像引用,这会导致奇怪的行为,特别是当您更改图像的名称时。
发布于 2014-10-02 20:46:57
伙计,看看这个资源的名字是不是在不同的情况下,我不知道为什么,但是在模拟器中,如果一个资源的名字是Box.png,而你只是把box.png放进去,它就能工作,但是不能在设备上工作,希望它能工作。
https://stackoverflow.com/questions/23470788
复制相似问题