speichern der Videos; mit UIImagePickerController; IOS 8 Swift

Ich bin neu in der app-Entwicklung, so kann dies eine triviale Frage, aber bitte um HILFE!!!

Ich versuche zu speichern, ein video in der Camera Roll verwenden Sie die UIImagePickerController-Klasse. Bisher habe ich erfolgreich das hochziehen der Kamera und speichern Sie ein Bild. Ich habe auch schon in der Lage, um ein video aufzuzeichnen, aber wenn ich drücken Sie "use video" es nicht speichern in der camera roll.

Ist unten angehängt didFinishPickingMediaWithInfo Funktion.

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)
            }
        }
    }
}

Hier ist die useVideo routine.

@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

    }
}

Hier ist die 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
    }
}
  • imagePicker.mediaTypes Sollte festgelegt werden, wie diese --> imagePicker.mediaTypes = [kUTTypeImage as String , kUTTypeImage as String]
InformationsquelleAutor Matthew | 2015-03-25
Schreibe einen Kommentar