Mat*_*hew 8 uiimagepickercontroller ios swift
我是应用程序开发的新手,所以这可能是一个微不足道的问题,但请帮助!
我正在尝试使用UIImagePickerController类将视频保存到相机胶卷.到目前为止,我已成功拉起相机并保存图像.我也能够录制视频,但是当我按下"使用视频"时,它不会保存到相机胶卷.
下面是附加的didFinishPickingMediaWithInfo函数.
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject])
{
let mediaType = info[UIImagePickerControllerMediaType] as NSString
self.dismissViewControllerAnimated(true, completion: nil)
if mediaType.isEqualToString(kUTTypeImage as NSString)
{
let image = info[UIImagePickerControllerOriginalImage] as UIImage
if (newMedia == true)
{
UIImageWriteToSavedPhotosAlbum(image, self, "image:didFinishSavingWithError:contextInfo:", nil)
}
else if mediaType.isEqualToString(kUTTypeMovie as NSString)
{
let videoPath = info[UIImagePickerControllerMediaURL] as NSString
if(newMedia == true)
{
UISaveVideoAtPathToSavedPhotosAlbum(videoPath, self,
"image:didFinishSavingWithError:contextInfo:", nil)
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是useVideo例程.
@IBAction func useVideo(sender: AnyObject)
{
if UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.Camera)
{
let imagePicker = UIImagePickerController()
imagePicker.delegate = self
imagePicker.sourceType = UIImagePickerControllerSourceType.Camera
imagePicker.mediaTypes = [kUTTypeMovie as NSString]
imagePicker.allowsEditing = false
self.presentViewController(imagePicker, animated: true, completion: nil)
newMedia = true
}
}
Run Code Online (Sandbox Code Playgroud)
这是cameraRoll.
@IBAction func useCameraRoll(sender: AnyObject) {
if UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.SavedPhotosAlbum){
let imagePicker = UIImagePickerController()
imagePicker.delegate = self
imagePicker.sourceType = UIImagePickerControllerSourceType.PhotoLibrary
imagePicker.mediaTypes = [kUTTypeImage as NSString]
imagePicker.mediaTypes = [kUTTypeMovie as NSString]
imagePicker.allowsEditing = false
self.presentViewController(imagePicker, animated: true, completion: nil)
newMedia = false
}
}
Run Code Online (Sandbox Code Playgroud)
如果关闭你就不匹配了.
if mediaType.isEqualToString(kUTTypeImage as NSString)
{
let image = info[UIImagePickerControllerOriginalImage] as UIImage
if (newMedia == true)
{
UIImageWriteToSavedPhotosAlbum(image, self, "image:didFinishSavingWithError:contextInfo:", nil)
}
Run Code Online (Sandbox Code Playgroud)
} // < - 如果图像条件添加,则关闭此处}
else if mediaType.isEqualToString(kUTTypeMovie as NSString)
{
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8324 次 |
| 最近记录: |