我有一段代码可以在仅iPad的应用程序中显示UIImagePicker。 从9.0开始,此功能在所有iPad上均可正常运行,但在iPad OS 13的iPad上却无法显示任何内容。
显示选择器的代码如下,该代码在主线程上使用调用
DispatchQueue.main.async
func pickGalleryImage() {
ipvc = imagePickerViewController();
imagePicker = UIImagePickerController();
imagePicker!.sourceType = .photoLibrary;
imagePicker!.modalPresentationStyle = .popover;
imagePicker!.allowsEditing = true;
imagePicker!.delegate = ipvc;
let presentationController = imagePicker!.popoverPresentationController;
presentationController!.sourceView = self.webView;
presentationController!.delegate = ipvc;
self.viewController.present(self.imagePicker!, animated: true, completion: {
NSLog("Done presenting imagePicker")
})
}
委托类如下
class imagePickerViewController : UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate, UIPopoverPresentationControllerDelegate
plist文件确实具有正确填充的“隐私-照片库使用说明”权限。用户也已授予权限。 该应用程序只能在横向模式下工作。
此代码在iOS 12之前的所有设备上仍然适用。 在iPad OS 13上,我确实收到完成回调,上面写着“完成提交imagePicker”,但屏幕上看不到任何东西。
我想念什么?