簡體   English   中英

如何在 SwiftUI 中使用轉換后的 jpgData 圖像?

[英]How do I use a converted jpgData image in SwiftUI?

當用戶從他們的照片庫中選擇一個項目時,應用程序使用以下代碼將 UIImage 保存到應用程序的目錄中:

let imageUUID = UUID()
    let filename = getDocumentsDirectory().appendingPathComponent("\(imageUUID)")
    
    guard let uiImage = newImage else { return}
    
    if let jpegData = uiImage.jpegData(compressionQuality: 0.8) {
        try? jpegData.write(to: filename, options: [.atomicWrite, .completeFileProtection])
    }

如何在視圖中使用保存的圖像? 謝謝!

首先,您應該將 UUID 保存在某處,以便以后可以讀取該文件。 這可能在UserDefaults 、 JSON 文件、CoreData 或其他任何內容中,具體取決於您的需要。

假設您有存儲在filePath中的文件的路徑,您可以像這樣創建一個Image

Image(uiImage: UIImage(contentsOfFile: filePath) ?? UIImage())

如果無法讀取文件,這將使用空圖像作為后備。

以下代碼將 UIImage 轉換為 SwiftUI 中的圖像:

let uiImage = UIImage(contentsOfFile: path) ?? UIImage() // Access it from your storage
let image = Image(uiImage: uiImage)

有不同的 UIImage 初始化方法可用,您可以使用其中任何一種來獲取 UIImage 實例。

https://developer.apple.com/documentation/swiftui/image

你會喜歡這個帶有SwiftUICoredata教程: https://www.raywenderlich.com/9335365-core-data-with-swiftui-tutorial-getting-started

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM