【发布时间】:2015-05-12 21:12:46
【问题描述】:
我有一个应用程序,它使用以下扩展名从 iOS 8 中的 .sks 文件很好地加载:
class func unarchiveFromFile(file : NSString) -> SKNode?
{
if let path = NSBundle.mainBundle().pathForResource(file as String, ofType: "sks")
{
var sceneData = NSData(contentsOfFile: path, options: .DataReadingMappedIfSafe, error: nil)!
var archiver = NSKeyedUnarchiver(forReadingWithData: sceneData)
archiver.setClass(self.classForKeyedUnarchiver(), forClassName: "SKScene")
let scene = archiver.decodeObjectForKey(NSKeyedArchiveRootObjectKey) as! GameScene
archiver.finishDecoding()
return scene
}
else
{
return nil
}
}
但是,当我将它与运行 iOS 7.1 的设备一起使用时,我在 AppDelegate 上得到一个 EXC_BAD_ACCESS 代码 EXC_I386_GPFLT,并且在日志中显示:
SKTexture:加载图片资源时出错:“MissingResource.png”
我认为问题可能是 sks 文件加载不正确。谁能告诉我如何从 sks 文件中加载我的场景?
感谢您的帮助,
【问题讨论】:
标签: ios swift sprite-kit exc-bad-access