Créer un UIImagePickerController
à partir du code, ajuster ses propriétés, ajouter une superposition sur celui-ci, et avec vous contrôleur, contrôle tout ce que vous voulez sur cette superposition: contrôles personnalisés, superposant des images, etc ...
Cela donne quelque chose comme ceci:
self.picker = [[UIImagePickerController alloc] init];
self.picker.sourceType = UIImagePickerControllerSourceTypeCamera;
self.picker.cameraCaptureMode = UIImagePickerControllerCameraCaptureModePhoto;
self.picker.cameraDevice = UIImagePickerControllerCameraDeviceRear;
self.picker.showsCameraControls = NO;
self.picker.navigationBarHidden = YES;
self.picker.toolbarHidden = YES;
self.picker.wantsFullScreenLayout = YES;
// Insert the overlay
self.overlay = [[OverlayViewController alloc] initWithNibName:@"Overlay" bundle:nil];
self.overlay.pickerReference = self.picker;
self.picker.cameraOverlayView = self.overlay.view;
self.picker.delegate = self.overlay;
[self presentModalViewController:self.picker animated:NO];
OverlayViewController
est le contrôleur que vous devez écrire pour contrôler tout ce que vous ajoutez sur la superposition.
pickerReference
est une propriété que vous pouvez conserver pour envoyer des ordres à la caméra. Par exemple, vous pouvez appeler le suivant d'un IBAction
provenant d'un UIButton
placé sur la superposition:
[self.pickerReference takePicture];
Essayez cette http://stackoverflow.com/a/34433045/3908884 –