SwiftUI 在主包中找不到命名的图像

Hee*_*Kim 15 ios swiftui

我正在学习 SwiftUI 并且对 Image(name: String) 有问题。

这是我的内容视图

var body: some View {
    VStack {
        Image("test")
            .resizable()
            .aspectRatio(contentMode: .fit)
            .frame(minWidth: 0, maxWidth: .infinity, minHeight: 0, maxHeight: 75, alignment: .center)
            .clipped()
        List(retriever.items) { item in
            Row(coin: item)
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当我运行这个项目时,我收到这条消息“线程 1:致命错误:在主包中找不到名为 test 的图像”

所以,我在下面尝试过。

  • 图像(“测试.jpg”)
  • 图像(“图像/测试”)
  • 图像(“图像/测试.jpg”)

但是,结果是一样的。

该图像位于此路径“项目根目录/图像/test.jpg”中


奇怪的是,这段代码运行良好。

Image(uiImage: UIImage(named: "test.jpg")!)
Run Code Online (Sandbox Code Playgroud)

我怎么解决这个问题?

Cod*_*ody 6

您必须将图像添加到 Xcode 项目结构中的资产目录,以便 Apple 可以在幕后使用一些魔法来准备它们以用于多种屏幕尺寸。在 xcode 编辑器左侧的项目窗格中双击 Assets.xcassets 文件夹(如果没有,请创建一个资产文件夹),然后将图像文件拖放到目录窗格中。

像这样的电话Image("your_image_name")应该在这之后工作。