Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 文件夹中的图像未显示_Swift_Xcode_Skspritenode - Fatal编程技术网

Swift 文件夹中的图像未显示

Swift 文件夹中的图像未显示,swift,xcode,skspritenode,Swift,Xcode,Skspritenode,刚刚开始使用XCode中的Swift,我已经阅读了许多教程。不幸的是,他们没有涵盖一些基本的知识。我已经导入了一个资产目录(包含子目录)并选择了“复制(根据需要)”。该文件夹为蓝色,显示在构建阶段->复制捆绑资源中。我使用了下面的简单线条,但图像在模拟器中仍然显示为红色“X”。我已经完成了清理/构建/重新启动,但仍然无法工作 if let ship = SKSpriteNode(fileNamed: "cannon.png") { ship.position =

刚刚开始使用XCode中的Swift,我已经阅读了许多教程。不幸的是,他们没有涵盖一些基本的知识。我已经导入了一个资产目录(包含子目录)并选择了“复制(根据需要)”。该文件夹为蓝色,显示在构建阶段->复制捆绑资源中。我使用了下面的简单线条,但图像在模拟器中仍然显示为红色“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

如何使图像显示

编辑

我已经下载了,它使用了“资产”文件夹的概念,并且正是我所尝试的。“Images.xcsets”文件夹中没有列出任何内容,所以我不确定为什么我的没有加载。我需要将此标识为特定文件夹吗

试试这个:

let texture = SKTexture(imageNamed: "myImage.png")
let ship = SKSpriteNode.init(texture: texture)

let spaceship=SKSpriteNode(图像名为:“myImage.png”)


在这两种情况下,使用
imageNamed

我最终不得不将其添加为捆绑资源,以使其可用。为此,我选择了顶级解决方案,并转到以下区域:构建阶段->复制捆绑资源

底部是+/-,您可以将各个项目添加到项目中。添加后,您将选择“复制(根据需要)”,项目将显示在列表中。然后它就可以用于项目了。不幸的是,在目录级别添加它并没有起作用

正如在其他搜索中所指出的,在文件检查器中必须选中“目标成员资格”复选框似乎很常见,但即使在这之后,我也没有可用的复选框


值得一提的是,上述方法的结合似乎解决了问题。

同样的结果。我还验证了该文件在“标识和类型”下的文件检查器中的名称为“cannon.png”,假设您正在单击.xcsets(蓝色文件夹),“标识和类型”下的名称应类似于“Assets.xcsets”或Xcsets的名称。在.xcsets中单击一个资产,然后在“属性”下单击该资产应该具有图像的名称。啊,我在项目导航中单击目录结构中的实际文件,您需要使用该图像在.xcsets资源中显示的名称。有趣的是,因为它没有列出。我会调查的。谢谢