UIImagePickerController
デフォルトのカメラ GUI を表示するために使用します。
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
picker.showsCameraControls = NO;
showsCameraControls
に設定すると、デフォルトのカメラ コントロールを非表示にできますNO
。次に、 を作成し、そのビューにUIView
コントロールと設定を追加して、独自のコントロールを定義できます。cameraOverlayView
UIView *cameraControlsView = [[UIView alloc] initWithFrame:controlsFrame];
UIButton *captureButton = [[UIButton alloc] initWithFrame:buttonFrame];
[captureButton setTitle:@"Capture" forState:UIControlStateNormal];
[captureButton addTarget:self action:@selector(buttonPressed:)
forControlEvents:UIControlEventTouchUpInside];
[cameraControlsView addSubview:captureButton];
picker.cameraOverlayView = cameraControlsView;
ユーザーがカスタム キャプチャをタップするUIButton
と、タイマーを開始できます。タイマーが起動したら、検証を行い、takePicture
メソッドを使用して画像をキャプチャします。
- (void)buttonPressed:(id)sender {
[NSTimer scheduledTimerWithTimeInterval:3.0f target:self
selector:@selector(timerFired:) userInfo:nil repeats:NO];
}
- (void)timerFired:(NSTimer *)timer {
if (whateverIsOk) {
[self.picker takePicture];
)
}