在共享扩展中使用SVProgressHUD

我在iOS应用程序中使用SVProgressHUD,它的工作完美。 我想使用它也为这个应用程序的共享扩展,但它不显示应用程序。 我正在使用共享扩展视图的自定义视图,这里是我用来调用SVProgressHUD的代码。 请注意,打印上传进度正常工作。 我究竟做错了什么? 谢谢。

class ShareViewController: UIViewController { ... Alamofire.upload(multipartFormData: { multipartFormData in multipartFormData.append(jpgImageData!, withName: "file",fileName: fname, mimeType: "image/jpg") for (key, value) in parameters { multipartFormData.append(value.data(using: String.Encoding.utf8)!, withName: key) } }, to:url!) { (result) in switch result { case .success(let upload, _, _): upload.uploadProgress(closure: { (progress) in print("Upload Progress: \(progress.fractionCompleted)") SVProgressHUD.setViewForExtension(self.view) SVProgressHUD.showProgress(Float(progress.fractionCompleted)) }) upload.responseJSON { response in if response.response?.statusCode == 200{ if let result = response.result.value { DispatchQueue.main.async(execute: { let pre = NSLocale.preferredLanguages[0] var message = "Message" SVProgressHUD.showSuccess(withStatus: message) SVProgressHUD.dismiss(withDelay: 2) self.extensionContext?.completeRequest(returningItems: nil, completionHandler: nil) }) } 

尝试这个

 class ShareViewController: UIViewController { ... Alamofire.upload(multipartFormData: { multipartFormData in multipartFormData.append(jpgImageData!, withName: "file",fileName: fname, mimeType: "image/jpg") for (key, value) in parameters { multipartFormData.append(value.data(using: String.Encoding.utf8)!, withName: key) } }, to:url!) { (result) in switch result { case .success(let upload, _, _): upload.uploadProgress(closure: { (progress) in print("Upload Progress: \(progress.fractionCompleted)") DispatchQueue.main.async(execute: { SVProgressHUD.setViewForExtension(self.view) SVProgressHUD.showProgress(Float(progress.fractionCompleted)) }) }) ... }