Превратите AsyncImage в UIImage
Я получил AsyncImage и хочу использоватьUIImageWriteToSavedPhotosAlbum
для сохранения моего AsyncImage в пользовательской библиотеке.
Я использовал курс Пола Хадсона, чтобы найти, что делать, но он загружает пустую белую картинку в библиотеку на моем iPhone и на симуляторе.
Вот код:
func snapshot() -> UIImage {
let controller = UIHostingController(rootView: self)
let view = controller.view
let targetSize = controller.view.intrinsicContentSize
view?.bounds = CGRect(origin: .zero, size: targetSize)
view?.backgroundColor = .blue
let renderer = UIGraphicsImageRenderer(size: targetSize)
return renderer.image { _ in
view?.drawHierarchy(in: controller.view.bounds, afterScreenUpdates: true)
}
}
}`
On the view:
`Button("Save to image") {
let image = AstronomyImageView(astronomy: article) //AsyncImage
let uiImage: UIImage = image.snapshot()
UIImageWriteToSavedPhotosAlbum(uiImage, nil, nil, nil)
}```