UIImagePickerController – 默认情况下如何访问前置摄像头?
我使用ViewController中的以下代码调出相机:
- (void)viewDidLoad { self.imgPicker = [[UIImagePickerController alloc] init]; self.imgPicker.sourceType = UIImagePickerControllerCameraDeviceFront; self.imgPicker.delegate = self; } - (IBAction)grabCamera { [self presentModalViewController:self.imgPicker animated:YES]; }
我怎样才能使相机默认使用iPhone4的前置摄像头而不是后置摄像头? 我试过DeviceFront无济于事。
此外,如何在按下grabCamera后在此相机的顶部添加子视图(半尺寸)? 如果我在我的MainWindow.xib中有这个子视图,我在说完presentModalViewController代码之后尝试说addSubview但是它不起作用…我是否需要创建一个NSTimer并在完全呈现相机显示后加载addSubview或者我需要使用其他东西(类似于CSS中的z-index)第二个问题的答案是imgPicker.cameraOverlayView = viewName;
谢谢大家!
UIImagePickerControllerCameraDeviceFront
不是sourceType
属性的有效枚举。 sourceType
属性定义您是使用相机还是照片库。 您需要设置cameraDevice
属性。
Objective-C的
self.imgPicker.sourceType = UIImagePickerControllerSourceTypeCamera; self.imgPicker.cameraDevice = UIImagePickerControllerCameraDeviceFront;
斯威夫特2
imgPicker.sourceType = .Camera imgPicker.cameraDevice = .Front
斯威夫特3
imgPicker.sourceType = .camera imgPicker.cameraDevice = .front