将图像而不是 UIImage 上传到 Firestore [英] Uploading an Image instead of an UIImage to Firestore

查看:17
本文介绍了将图像而不是 UIImage 上传到 Firestore的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用 Swift 5.0/SwiftUI 2.0

Using Swift 5.0 / SwiftUI 2.0

将 UIImage 上传到 Firestore 时可用的一种方法是 jpegData(compressionQuality: Double),它实质上使获取已保存图像的整个过程更快.

One method available when uploading an UIImage to Firestore is jpegData(compressionQuality: Double) which essentially makes the whole process of fetching the saved image a lot faster.

是否有任何等效的 Image 或任何其他可行的解决方法,或者像 UIImage 或糟糕的 UX 一样简单

Is there any equivalent for Image yet or any other viable workarounds or its as simple as either UIImage or poor UX

推荐答案

struct ContentView: View {
    
    //Here
    @State var uiImage: UIImage?
    
    var body: some View {
        VStack {
            if uiImage != nil {
                Image(uiImage: uiImage!)
            }
            
            
            Button(action: {
                downloadImage()
            }, label: {
                Text("Download image")
            })
        }
        
    }

    func downloadImage() {
        URLSession.shared.dataTask(with:URL(string: "https://upload.wikimedia.org/wikipedia/commons/3/3f/Self-portrait_taken_with_laptop%2C_March%2C_2018.jpg")!) { (data, response, eooror) in
            guard data != nil else { return }
            
            DispatchQueue.main.async {
                self.uiImage = UIImage(data: data!)
            }
    
        }.resume()
    }
    
    //Here
    func getData() {
        var data = uiImage?.jpegData(compressionQuality: 0.5)
    }
}

这篇关于将图像而不是 UIImage 上传到 Firestore的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆