使用自定义相机创build预览屏幕

我正在创build一个应用程序,为相机定制了一个覆盖层。 我注意到,当我使用相机的正常默认设置时,会出现预览,您可以select重新拍摄照片或使用它。 在使用自定义叠加层时,是否有简单的方法来显示该屏幕? 谢谢!

是的…..因为这你必须以编程方式创build一个摄像头覆盖视图。

然后写这个代码…

//set our custom overlay view imagePickerController.cameraOverlayView = overlayView; imagePickerController.showsCameraControls = NO; 

要在相机屏幕上显示重叠视图,请使用上面的代码。 对于添加叠加视图,不需要使用addSubView方法。

当你使用普通摄像头时,默认取消button,使用,Ratake和摄像头反向button出现在你的屏幕上。 如果您将使showsCameraControls“否”。 那么这些button不会来。 然后以编程方式,你必须添加UIButton在相机覆盖视图和设置其function。

在这里,我在相机覆盖视图中添加一个button。

  //add Camera Reverse button to the overlay view. UIButton *btnCamReverse = [UIButton buttonWithType:UIButtonTypeRoundedRect]; [btnCamReverse setBackgroundImage:[UIImage imageNamed:@"image.png"] forState:UIControlStateNormal]; //set the frame CGRect btnCamReverseFrame = CGRectMake(400, 250, 50, 50); btnCamReverse.frame = btnCamReverseFrame; [btnCamReverse addTarget:self action:@selector(onClickButtonCamReverse:) forControlEvents:UIControlEventTouchUpInside]; [overlayView addSubview:btnCamReverse]; //IBAction (for switching between front and rear camera). -(IBAction)onClickButtonCamReverse:(id)sender { if(imagePickerController.cameraDevice == UIImagePickerControllerCameraDeviceFront) { imagePickerController.cameraDevice = UIImagePickerControllerCameraDeviceRear; } else { imagePickerController.cameraDevice = UIImagePickerControllerCameraDeviceFront; } } 

相机覆盖示例打开下面的链接…..

https://github.com/anka/bw_examples

自定义视图的相机

它为我工作…我希望它也适用于你。