SwiftUI:将语法添加自定义符号图像/ SVG的语法正确吗?

时间:2019-10-01 11:37:07

标签: swiftui

我已经按照文档中的说明设置符号:https://developer.apple.com/documentation/xcode/creating_custom_symbol_images_for_your_app

还有有关配置的文档:https://developer.apple.com/documentation/uikit/uiimage/configuring_and_displaying_symbol_images_in_your_ui

但是,没有什么内容涵盖在视图中实际包括其中之一的语法。例如,给Assets.xcassets中的符号图像命名为“香肠”,下面的正确语法应该是什么,而不是Image(systemName: "sausages"),它只是呈现空白?

symbolSet如何成为可用的图像?这是问题吗?

Text("Sausages")  
    .font(.title)  
    .tabItem {  
        VStack {  
           Image(systemName: "sausages")  
           Text("sausages")  
        }  
    }  

还是必须使用标准的Swift来完成?

3 个答案:

答案 0 :(得分:1)

您可以使用传统的Image语法创建UIImage(named

Image(uiImage: UIImage(named: "sausages")!)

答案 1 :(得分:0)

简单地:

var body: some View {
   Image("example-image")
}

或检查:

guard let img = UIImage(named: "example-image") else {
   print("Unable to load image")
}

return Image(UIImage: img)

enter image description here

答案 2 :(得分:0)

要扩展Johannes答案(这是我在Xcode版本11.2.1中使用的语法),还可以添加类似的样式;

Image("my.custom.symbol")
.font(Font.system(size: 24, weight: .light))
.foregroundColor(Color("myCustomColor"))