Ответ 1
Во всех ваших контроллерах представления переопределите -contentSizeForViewInPopover
и верните одинаковый размер во всех них.
Я показываю представление в popover. Когда я нажимаю кнопку в этом представлении, другое представление будет перемещено в popover с помощью навигационного контроллера. При нажатии, высота popover увеличивается. Как сохранить ту же высоту посева?
Во всех ваших контроллерах представления переопределите -contentSizeForViewInPopover
и верните одинаковый размер во всех них.
-contentSizeForViewInPopover устарел с iOS 7 и, похоже, не работает в iOS 8.1. (Я не уверен, когда он перестает работать.) Новый метод - установить preferredContentSize, возможно, так:
MyPopoverViewController *myPopoverViewController = [[MyPopoverViewController alloc] initWithNibName: @"MyPopoverViewController" bundle: nil];
myPopoverViewController.preferredContentSize = CGSizeMake(186, 160);
self.myPopover = [[UIPopoverController alloc] initWithContentViewController: myPopoverViewController];
myPopover.delegate = self;
[myPopover presentPopoverFromRect: self.myButton.frame inView: self.view permittedArrowDirections: UIPopoverArrowDirectionAny animated: YES];