ios - SpriteKit 动画错误

标签 ios animation sprite-kit

我想把英雄跳起来做成动画

 NSArray *animatedImages = [NSArray arrayWithObjects:
                                   [UIImage imageNamed:@"hero_1.png"],
                                   [UIImage imageNamed:@"hero_2.png"],
                                   [UIImage imageNamed:@"hero_1.png"],
                                   [UIImage imageNamed:@"hero_.png"], nil];
    SKAction *jump = [SKAction animateWithTextures:animatedImages timePerFrame:0.2];
    [hero runAction:jump];

这段代码放在didBeginContact

错误

-[UIImage isRotated]: unrecognized selector sent to instance

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIImage isRotated]: unrecognized selector sent to instance 0x1780945a0'

最佳答案

您不能为 UIImage 对象设置动画,它们必须是 SKTexture 对象。

NSArray *animatedImages = [NSArray arrayWithObjects:
                               [SKTexture textureWithImageNamed:@"hero_1.png"],
                               [SKTexture textureWithImageNamed:@"hero_2.png"],
                               [SKTexture textureWithImageNamed:@"hero_1.png"],
                               [SKTexture textureWithImageNamed:@"hero_.png"], nil];

关于ios - SpriteKit 动画错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25584837/

相关文章:

ios - pushViewController iOS 8 上的黑屏

ios - 执行选择器 :withObject:afterDelay: -- can I be certain that this is run on the main thread?

html - CSS3 Grid-gap 不适用于 iphone

ios - 如何使用 Swift 创建自定义类加载 View

animation - Unity 动画在预览中播放,但在玩游戏时不播放

c# - 暂停/恢复 WPF Storyboard

javascript - 在 DOM 中添加新元素后保留元素屏幕位置

ios - Spritekit 中的击中动画

ios - 如何在 SpriteKit 中使用 UITextView?

swift - SpriteKit childNodeWithName 找不到现有节点