UIPopOverController внутри UISplitViewController - PullRequest
5 голосов
/ 24 декабря 2011

Мне нужно показать один popOver внутри левой стороны одного splitController, я инициализирую popOver с помощью navigController.Но когда я показываю всплывающее окно, мое приложение вылетает.

Impostazioni *settings = [[Impostazioni alloc] initWithStyle:UITableViewStyleGrouped];
settings.title = NSLocalizedString(@"SETTINGS", nil);
settings.contentSizeForViewInPopover = kContentSizeOfPopOver;
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:settings];
nav.navigationBar.tintColor = kTintColorNavigationBar;
nav.contentSizeForViewInPopover = kContentSizeOfPopOver;
UIPopoverController *popOver = [[UIPopoverController alloc] initWithContentViewController:nav];
[popOver presentPopoverFromBarButtonItem:self.navigationItem.rightBarButtonItem permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES];

Это мой код.Любые идеи?

РЕДАКТИРОВАТЬ: Сбой, даже если я установил только viewController вместо SplitController: / И с пустым ViewController: /

Ответы [ 2 ]

2 голосов
/ 03 января 2012

(возможно, дубликат Ошибка при использовании UIPopoverController .)

Короче, вам нужно как-то сохранить UIPopoverController.Либо путем определения свойства для него, либо путем управления счетчиком ссылок вручную.С ARC последнее не вариант, поэтому вам нужно сохранить ссылку.

0 голосов
/ 03 января 2012

Я считаю, что вам нужна переменная экземпляра для хранения popoverController. Иначе после того, как метод, содержащий код, который вы показали, завершает работу, ничто не сохранит ваш поповер. В отличие от того, когда вы добавляете подпредставление в представление, которое затем будет сохранять подпредставление. То же самое не относится к поповерам.

...