无法将 <UIImage:0x283942880 anonymous {1080, 1080} renderingMode=automatic> 设置为 UIImageView XCode Swift

Unable to set <UIImage:0x283942880 anonymous {1080, 1080} renderingMode=automatic> to UIImageView XCode Swift

我开发了一个应用程序,可以从电话簿中获取联系人并保存他们的姓名和照片。为了保存照片,我使用了以下代码

if let imageData = contact.thumbnailImageData {
                            
     imageStr = String(describing: UIImage(data: imageData)!)
                            
} else {
                        
     imageStr = "null"
}

当我使用 print("IMGSTR: \(imageStr)") 打印 imageStr 时,我得到以下输出

IMSTR: <UIImage:0x283942880 anonymous {1080, 1080} renderingMode=automatic>

现在我被困在如何将这个字符串设置到 UIImageView 上,我试过了

imageview.image = UIImage(named: imageStr)

但它什么也没显示

有人可以帮助我如何将字符串 <UIImage:0x283942880 anonymous {1080, 1080} renderingMode=automatic> 设置为 UIImageView 吗?

无需将其转换为字符串。 UserDefaults 支持 Data 个对象。将其存储为 Data 并在将其设置为 UIImageView 时使用 let image = UIImage(data : imageData)

如果你想将 Data 的实例转换为 String,你应该使用 String(decoding:as:) 初始化器,就像这样。(例如:let str = String(decoding: data, as: UTF8.self))。