我的代码在这里
@IBAction func openVideo(_ sender: Any) {
//selectVideo(delegate: self, sourceType: .savedPhotosAlbum)
let mediaUI = UIImagePickerController()
mediaUI.sourceType = .savedPhotosAlbum
mediaUI.mediaTypes = [kUTTypeMovie as String]
mediaUI.allowsEditing = true
mediaUI.delegate = self
self.present(mediaUI, animated: true, completion: nil)
}
在这一部分,我选择视频。
extension ViewController: UIImagePickerControllerDelegate, UINavigationControllerDelegate {
func processVideo(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey: Any]){
let url = info[UIImagePickerController.InfoKey.mediaURL] as! URL
print("hey")
self.dismiss(animated: true) {
let player = AVPlayer(url: url)
let vcPlayer = AVPlayerViewController()
vcPlayer.player = player
self.present(vcPlayer, animated: true, completion: nil)
}
}
}
我究竟做错了什么?
我在processVideo函数中无法得到任何打印。从图库中选择视频后出现此错误。
"Error returned from daemon: Error Domain=com.apple.accounts Code=7 "(null)""
通过将processvideo函数的名称更改为imagePickerController来解决问题。名称似乎在委托函数中非常重要。我没注意到。
创建此委托函数的技巧可写didfinish,然后将使用名为imagePickerController的首选函数。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句