У меня есть popover с TabBarController в нем. На одной вкладке есть TableViewController со списком имен. И есть кнопка «плюс», которая имеет modal segue для AddCharacterVC для добавления новых имен. В прошивке 7 Я делаю это так:iOS 8 - Modal in Popover
AddCharacterViewController *acvc = (AddCharacterViewController *)segue.destinationViewController;
acvc.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
acvc.modalPresentationStyle = UIModalPresentationCurrentContext;// so it does not take full screen in popover
И в AddCharacterVC я установил размер контента, как это:
- (void)viewWillAppear:(BOOL)animated {
CGSize size = CGSizeMake(320, 480); // size of view in popover
if (IDIOM == IPAD && [self respondsToSelector:@selector(preferredContentSize)]){
self.preferredContentSize = size;
}
И это прекрасно работает.
Однако, в iOS 8 модальный вид не распространяется на весь popover, оставляя TabBar видимым. Пользователь может нажать на него или нет, в любом случае модальное представление не будет правильно раскручиваться.
Я пробовал:
- установки acvc.modalPresentationStyle в UIModalPresentationOverCurrentContext
- попытался установить TabBar скрытого
- проверил в раскадровке, что края TableVC расширения под нижней панелью и нижней панелью в модальной View (AddCharacterVC) не установлен
Все без результатов.
Теперь единственное, что я могу придумать, - попробовать сделать modalPresentationStyleCustom и использовать UIPresentationController (я пытаюсь сделать это сейчас, но раньше я этого не делал). Я что-то упускаю? Может ли быть другой способ сделать это? Извините, я не могу размещать изображения здесь. Спасибо заранее!