2016-02-22 48 views
0

我想讓我的應用程序爲我的主控制器顯示攝像機。到目前爲止,我已經能夠使用擴展UIViewController的控制器,然後通過代碼實例化UIImagePickerController。現在我想看看是否有避免創建UIViewController的方法,而是直接創建UIImagePickerController。UIImagePickerController在故事板?

到目前爲止,我曾嘗試:

class VideoRecorderViewController: UIImagePickerController { 

    override func viewDidLoad() { 
     super.viewDidLoad() 


     self.sourceType = .Camera 
     self.cameraCaptureMode = .Video 
     self.mediaTypes = [kUTTypeMovie as NSString as String] 
     self.allowsEditing = false 
     self.delegate = delegate 
     self.showsCameraControls = false 
    } 

    ... 
} 

我現在得到 'NSInvalidArgumentException' 的,理由是:「cameraCaptureMode 1不可用,因爲mediaTypes確實包含public.movi​​e

有誰有例子的正確方法這樣做?

回答

0

首先,確保您已導入MobileCoreServices框架以使您的視頻捕捉工作。

import MobileCoreServices 

而只需替換下面一行代碼的:

self.mediaTypes = [kUTTypeMovie] 

希望這有助於!

+0

謝謝,雖然這並沒有像介紹的那樣工作。原來這是一個序列問題。把'self.mediaTypes'首先解決了這個問題,在swift2中它似乎是[kUTTypeMovie as String] –

+0

順便提一下,建議不要擴展UIImagePickerCobtroller,因爲它不是擴展的。 –