微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Swift中使用UIImage在数组中使用字符串索引与文本一起显示?

如何解决如何在Swift中使用UIImage在数组中使用字符串索引与文本一起显示?

所以我有一束花。


var flowers = ["Waterlily","Sunflower","Rose","magnolia","Lily","Jonquil","Echinacea"]

我正在尝试将数组中的这些字符串转换为小写,并在其末尾附加.jpg,以便可以在资源文件夹中显示图片

这是我的代码

    Image(UIImage(named: flowers[index].lowercased() + ".jpg"))
                    .resizable()
                    .aspectRatio(contentMode: .fit)
                    .frame(width: 100,height: 60)

我的错误是我无法转换“ UIImage”类型的值?预期的参数类型为“字符串”。

这是我的完整代码

import PlaygroundSupport

struct ContentView: View
{
    var flower: String = ""
    
    var flowers = ["Waterlily","Echinacea"]
    
    var body: some View
    {
        
        List(0..<flowers.count)
        {
            index in
            
            
            HStack
                {
                    
                    
                    Image(UIImage(named: flowers[index].lowercased() + ".jpg"))
                    .resizable()
                    .aspectRatio(contentMode: .fit)
                    .frame(width: 100,height: 60)
                    
                    
                    Text(self.flowers[index])
                }
        }
    }

}

PlaygroundPage.current.setLiveView(ContentView())

解决方法

您在Image视图中使用了错误的初始化程序。

在这种情况下,请使用Image(uiImage: UIImage)。 (请注意,必须提供参数名称/参数标签。)

https://developer.apple.com/documentation/swiftui/image/init(uiimage:)

(已更改您的代码以正常工作)

struct ContentView: View
{
    var flower: String = ""
    
    var flowers = ["Waterlily","Sunflower","Rose","Magnolia","Lily","Jonquil","Echinacea"]
    
    var body: some View
    {
        List(0..<flowers.count) { index in
            HStack {
                // uiImage argument label is required
                Image(uiImage: UIImage(named: flowers[index].lowercased() + ".jpg"))
                    .resizable()
                    .aspectRatio(contentMode: .fit)
                    .frame(width: 100,height: 60)
                    
                    
                Text(self.flowers[index])
            }
        }
    }
}

以下是Image视图的所有初始化程序的列表 https://developer.apple.com/documentation/swiftui/image

关于功能参数和参数标签的快速文档 https://docs.swift.org/swift-book/LanguageGuide/Functions.html#ID166

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。