gpt4 book ai didi

iOS:使用 takePicture 方法时发生崩溃

转载 作者:行者123 更新时间:2023-11-28 20:09:05 25 4
gpt4 key购买 nike

我正在使用自定义的 UIImagePickerController 并且我也需要在同一个 Controller 中使用 UINavigationBar,所以我没有显示默认的相机捕捉按钮,而是尝试利用空间导航栏本身,在按钮操作上我试图调用拍照方法但它崩溃了。正确的做法是什么。

    // prepare imagePicker view
imagePicker = [[UIImagePickerController alloc] init];
imagePicker.delegate = self;
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
imagePicker.cameraDevice = UIImagePickerControllerCameraDeviceFront;
imagePicker.showsCameraControls = NO;
isFront = YES;
cameraType = @"front";

UIBarButtonItem *takePictureButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCamera target:imagePicker.view action:@selector(captureImage:)];

UIBarButtonItem *cancelButton = [[UIBarButtonItem alloc]initWithTitle:@"Cancel" style:UIBarButtonItemStyleBordered target:self action:@selector(flip:)];

self.navigationItem.rightBarButtonItems = [[NSArray alloc]initWithObjects:takePictureButton,cancelButton, nil];

-(void)captureImage:(id)sender
{
[imagePicker takePicture];
}

- (void) flip: (id) sender
{
if(isFront)
{
cameraType = @"front";
isFront = NO;
imagePicker.cameraDevice = UIImagePickerControllerCameraDeviceFront;
}
else
{
isFront = YES;
cameraType = @"rear";
imagePicker.cameraDevice = UIImagePickerControllerCameraDeviceRear;

}
}

最佳答案

您正在尝试从 imagePicker.view 调用一个未在此处声明的方法。

替换

UIBarButtonItem *takePictureButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCamera target:imagePicker.view action:@selector(captureImage:)];

UIBarButtonItem *takePictureButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCamera target:self action:@selector(captureImage:)];

关于iOS:使用 takePicture 方法时发生崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20993484/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com