刚开始使用XCode中的Swift,我已经完成了许多教程。不幸的是,他们没有涵盖一些必要的基础知识我已经导入了资产目录(包含子目录)并选择了“复制(根据需要)”。该文件夹为蓝色,显示在Build Phases - >复制捆绑资源。我使用了下面的简单线条,但图像仍然在模拟器中显示为红色“X”。我已经完成了清理/构建/重启,它仍然无法正常工作。
if let ship = SKSpriteNode(fileNamed: "cannon.png")
{
ship.position = CGPoint(x: self.size.width/2, y: self.size.height/2)
self.addChild(ship)
}
引用的文件位于Assets/Sprite Images/cannon.png
如何让图像显示?
修改
我已经下载了Space Invaders Tutorial Starter Project,它使用了“Assets”文件夹的概念,正是我尝试过的。 “Images.xcassets”文件夹中没有列出任何内容,所以我不确定为什么我的加载没有。我是否需要将其识别为特定文件夹?
答案 0 :(得分:0)
请改为尝试:
let texture = SKTexture(imageNamed: "myImage.png")
let ship = SKSpriteNode.init(texture: texture)
OR
let spaceship = SKSpriteNode(imageNamed: "myImage.png")
在任何一种情况下,请使用imageNamed
答案 1 :(得分:0)
我最终不得不将其添加为捆绑资源以使其可用。我选择顶级解决方案并进入以下区域:Build Phases-> Copy Bundle Resources
底部是+/-,您可以将单个项目添加到项目中。添加后,您将选择“复制(根据需要)”,该项目将显示在列表中。然后它可用于项目。不幸的是,在目录级别添加它并不起作用。
正如在其他搜索中所指出的那样,通常必须在文件检查器中选中“目标成员资格”框,但即使在此之后我也没有可用的复选框。
对于它的价值,似乎上述的组合解决了这个问题。