简体   繁体   English

iPhone SDK - 如何使用自定义相机视图拍摄照片?

[英]iPhone SDK - How to take a picture with custom camera view?

I want to release the shutter as soon as the user tabs on the screen. 我想在用户选中屏幕时立即释放快门。 I have working code for displaying the camera in fullscreen mode. 我有工作代码以全屏模式显示相机。 How can I trigger the shutter by a touch? 如何通过触摸触发快门?

- (IBAction) takePicture
{
    if (!self.imgPicker) {
        self.imgPicker = [[UIImagePickerController alloc] init];
        self.imgPicker.allowsEditing = NO;
        self.imgPicker.delegate = self;
    }

    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
    {
        self.imgPicker.sourceType = UIImagePickerControllerSourceTypeCamera;
        self.imgPicker.showsCameraControls = NO;
        self.imgPicker.wantsFullScreenLayout = YES;

        CGAffineTransform cameraTransform = CGAffineTransformMakeScale(1.132, 1.132);
        self.imgPicker.cameraViewTransform = cameraTransform;

        UIView *headsUpView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 480, 320)];

        [self.imgPicker setCameraOverlayView:headsUpView];
    } else {
        NSLog(@"Camera not available.");
        self.imgPicker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;  
    }

    [self presentModalViewController:self.imgPicker animated:YES];
}

You should use the takePicutre method and then detect any touches on the screen. 您应该使用takePicutre方法,然后检测屏幕上的任何触摸。

http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIImagePickerController_Class/UIImagePickerController/UIImagePickerController.html#//apple_ref/occ/instm/UIImagePickerController/takePicture http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIImagePickerController_Class/UIImagePickerController/UIImagePickerController.html#//apple_ref/occ/instm/UIImagePickerController/takePicture

Something like this 像这样的东西

-(void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{
    UITouch *touch = [[event allTouches] anyObject];
    self.imgPicker.takePicture;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM