无法将 <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)
)。
我开发了一个应用程序,可以从电话簿中获取联系人并保存他们的姓名和照片。为了保存照片,我使用了以下代码
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)
)。