Подтвердить что ты не робот

Как установить размер содержимого UIPopoverController?

Я показываю представление в popover. Когда я нажимаю кнопку в этом представлении, другое представление будет перемещено в popover с помощью навигационного контроллера. При нажатии, высота popover увеличивается. Как сохранить ту же высоту посева?

4b9b3361

Ответ 1

Во всех ваших контроллерах представления переопределите -contentSizeForViewInPopover и верните одинаковый размер во всех них.

Ответ 2

-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];