【问题标题】:How to identify whether a video is recorded or picked form savedPhotosAlbum inside imagePickerController(_: didFinishPickingMediaWithInfo:) method如何在 imagePickerController(_: didFinishPickingMediaWithInfo:) 方法中识别视频是从 savedPhotosAlbum 中录制还是从图像中挑选出来的
【发布时间】:2020-01-21 03:42:27
【问题描述】:

在我的 swift 应用程序中,我有“录制视频”功能和“播放视频”功能。 我使用了委托方法imagePickerController(_:didFinishPickingMediaWithInfo:) 来处理这两个功能。在每种情况下,函数内的整个代码都在运行。

func imagePickerController(_ picker: UIImagePickerController, 
      didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
      //code
}

在此功能中,我如何具体知道我正在处理的视频是录制的还是从已保存的PhotosAlbum中挑选

【问题讨论】:

  • 您很可能会在info 字典中找到此信息。您可以在方法中设置断点并检查info 中的键是什么吗?这可能会为你指明你想去的方向。
  • 谢谢@DavidChopin。选择的视频在info 字典UIImagePickerControllerMediaURLUIImagePickerControllerReferenceURLUIImagePickerControllerMediaType 中有3 个元素。而录制的视频只有UIImagePickerControllerMediaTypeUIImagePickerControllerMediaURL。现在我可以通过检查if (info[UIImagePickerControllerReferenceURL] != nil)来处理观看视频功能。
  • 太棒了!很高兴能提供帮助。

标签: ios swift uiimagepickercontroller


【解决方案1】:
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {

switch picker.sourceType {

case .camera:
     // Recorded


case .photoLibrary, .savedPhotosAlbum:
    // picked from Photos library


default: break
}



   }

【讨论】:

  • 感谢@K4747Z。这对我有用。!不幸的是,我的声誉低于 15,因此我无法投票给答案。 :D
猜你喜欢
  • 1970-01-01
  • 2016-03-15
  • 1970-01-01
  • 2020-12-10
  • 2020-03-02
  • 2016-04-02
  • 2013-03-13
  • 2010-10-26
  • 2013-03-28
相关资源
最近更新 更多