Я показываю свой popOverController
для iPhone и iPad в коде ниже.iOS: проблема с автоопределением и popOverController (возможная ошибка Xcode)
ViewController *vc = [[ViewController alloc]initWithNibName:@"ViewController" bundle:nil];
if ([UIDevice currentDevice].userInterfaceIdiom ==
UIUserInterfaceIdiomPad) {
vc.preferredContentSize = CGSizeMake(296, 476); //your custom size.
} else {
vc.preferredContentSize = CGSizeMake(252, 436.5);
}
vc.modalPresentationStyle = UIModalPresentationPopover;
vc.popoverPresentationController.delegate = self;
vc.popoverPresentationController.sourceView = self.view;
vc.popoverPresentationController.sourceRect = CGRectMake(screenWidth/2, self.view.height/2, 1, 1);
[self presentViewController:vc animated:YES completion:nil];
UIPopoverPresentationController *popOverController = vc.popoverPresentationController;
popOverController.permittedArrowDirections = 0;
Однако, похоже, возникает проблема с размером класса. Кажется, что размер iPhone используется, а не размер iPad вообще даже при работе iPad-устройства. Несмотря на то, что в построителе интерфейса он отображает два разных размера для кнопок в зависимости от выбранного устройства.
Редактировать: Например, у меня есть viewcontroller.xib с кнопками. Существуют два разных размера кнопок в зависимости от фактического устройства. На iPhone кнопки имеют размер 50 x 50. На iPad он имеет размер 430 x 430. В построителе интерфейса это отображается правильно. Однако при запуске iPad-устройства кнопки отображаются как 50 x 50, если предполагается, что они составляют 430 x 430.
Что вы подразумеваете под «размером»? На iPhone вы даже не увидите popover; вы увидите полноэкранный представленный контроллер представления. Итак, как вы знаете, что такое «размер»? Пожалуйста, покажите скриншоты. – matt
Например, у меня есть viewcontroller.xib, у которого есть кнопки. Существуют два разных размера кнопок в зависимости от фактического устройства. На iPhone кнопки имеют размер 50 x 50. На iPad он имеет размер 430 x 430. В построителе интерфейса это отображается правильно. Однако при запуске iPad-устройства кнопки отображаются как 50 x 50, когда предполагается, что они составляют 430 x 430. И у меня также есть popover на iPhone. – Weakman10122
Хорошо, теперь я понимаю. – matt