导航栏的按钮项在 iPad 上不可点击

时间:2021-04-06 19:43:43

标签: ios xcode ipad uinavigationcontroller uinavigationbar

在我的应用程序中,我使用旧的 GKImage 库来添加图片并能够轻松自定义裁剪它们。这非常有效,除非涉及 iPad。在 iPhone 上,一切正常。主要问题是:

当我使用 iPad 时,barButtonItems 都不可点击。

这是我用于此视图的代码:

- (void)_actionCancel{
    [self.navigationController popViewControllerAnimated:YES];
}


- (void)_actionUse{
    NSLog(@"PRESSED");
    _croppedImage = [self.imageCropView croppedImage];
    [self.delegate imageCropController:self didFinishWithCroppedImage:_croppedImage];
}


- (void)_setupNavigationBar{
    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel
                                                                                          target:self 
                                                                                          action:@selector(_actionCancel)];
    
    self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Use"
                                                                              style:UIBarButtonItemStylePlain
                                                                             target:self 
                                                                             action:@selector(_actionUse)];
}


- (void)_setupCropView{
    
    self.imageCropView = [[GKImageCropView alloc] initWithFrame:self.view.bounds];
    [self.imageCropView setImageToCrop:sourceImage];
    [self.imageCropView setResizableCropArea:self.resizeableCropArea];
    [self.imageCropView setCropSize:cropSize];
    [self.view addSubview:self.imageCropView];
}


#pragma mark -
#pragma Super Class Methods

- (id)init{
    self = [super init];
    if (self) {
        // Custom initialization
    }
    return self;
}

- (void)viewDidLoad{
    [super viewDidLoad];
    
    self.title = @"Choose Photo";

    [self _setupNavigationBar];
    [self _setupCropView];

    
        [self.navigationController setNavigationBarHidden:NO];
    
}


- (void)viewWillLayoutSubviews{
    [super viewWillLayoutSubviews];
    
    self.imageCropView.frame = self.view.bounds;
}

用于呈现这个控制器的代码是:

self.imagePicker = [[GKImagePicker alloc] init];
    self.imagePicker.cropSize = CGSizeMake(280, 280);
    self.imagePicker.delegate = self;
    self.imagePicker.imagePickerController.sourceType = UIImagePickerControllerSourceTypeCamera;

    [self presentViewController:self.imagePicker.imagePickerController animated:YES completion:nil];

呈现视图控制器有问题吗?

0 个答案:

没有答案
相关问题