Ipad弹出UIAlertControllerStyleActionSheet时发生崩溃

时间:2023-03-08 22:27:09
Ipad弹出UIAlertControllerStyleActionSheet时发生崩溃

pad弹出UIAlertControllerStyleActionSheet时,在iphone上运行正常,但在ipad上崩溃,解决代码如下:

UIAlertController *alertVc = [UIAlertController alertControllerWithTitle:@"请选择图片" message:@"" preferredStyle:UIAlertControllerStyleActionSheet];

if (isiPad) {//判断是否为ipad

UIPopoverPresentationController *popover = alertVc.popoverPresentationController;

if (popover) {

popover.sourceView = view;//视图中的某个view

popover.sourceRect = view.bounds;

popover.permittedArrowDirections = UIPopoverArrowDirectionDown;//alertVC弹出的位置

}

}

UIAlertAction *action1 = [UIAlertAction actionWithTitle:@"拍照" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {

}];

UIAlertAction *action2 = [UIAlertAction actionWithTitle:@"相册" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {

}];

UIAlertAction *action3 = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleDestructive handler:^(UIAlertAction * _Nonnull action) {

[alertVc dismissViewControllerAnimated:YES completion:nil];

}];

[alertVc addAction:action1];

[alertVc addAction:action2];

[alertVc addAction:action3];

[self presentViewController:alertVc animated:YES completion:nil];