我正在开发一个iOS应用程序,用户可以在其中一个点上拍照。不过,我希望用户只能使用前置摄像头。也就是说,他们不应该接触到后摄像头。目前,我的代码如下所示:
@IBAction func takePicture(sender: UIButton) {
if UIImagePickerController.availableCaptureModesForCameraDevice(.Front) != nil {
let imagePickerController = UIImagePickerController()
imagePickerController.sourceType = .Camera
imagePickerController.allowsEditing = false
imagePickerController.cameraDevice = .Front
imagePickerController.delegate = self
presentViewController(imagePickerController, animated: true, completion: nil)
}
else {
let alertVC = UIAlertController(
title: "No Camera",
message: "Sorry, this device has no camera",
preferredStyle: .Alert)
let okAction = UIAlertAction(
title: "OK",
style:.Default,
handler: nil)
alertVC.addAction(okAction)
presentViewController(alertVC,
animated: true,
completion: nil)
}
}
尽管默认情况下相机是正面的,但它仍然为用户提供了切换到背面相机的选择。有没有办法限制这个功能?
提前谢谢
最佳答案
如果不想让用户获得UIImagePickerController提供的自由,只需不要使用UIImagePickerController。设计你自己的拍照界面(通过AVFoundation),在那里你可以完全控制。