2014-02-14 5 views
1

У моего приложения есть UISplitViewController, который начинается с скрытого скрытого вид мастера.
Если я не повернуть устройство, следующий метод делегатаUISplitViewController - получение ссылки на контроллер popover

- (void)splitViewController:(UISplitViewController *)svc 
    willHideViewController:(UIViewController *)aViewController 
      withBarButtonItem:(UIBarButtonItem *)barButtonItem 
     forPopoverController:(UIPopoverController *)pc { 
    _masterPopover = pc; 
} 

никогда не будет вызываться. И это единственный способ, которым я знаю, получить ссылку на контроллер popover (pc в этом методе).

Мне нужна ссылка на возможность программно отображать и скрывать мастер-постер, но я не могу зависеть от пользователей, чтобы они вращали свои iPads. Есть ли другой способ получить эту ссылку?

ответ

1

Если главный вид скрыт, то willHideViewControllerдолжен быть вызван.. И когда это так, вы получаете barButtonItem, который позволяет пользователю вызвать popover (и вы вставляете его в свой интерфейс).

Если это не работает для вас, мой лучший совет - не использовать UISplitViewController. Просто сканируй свой собственный. UISplitViewController всегда был крайне беден (и вы перенесите свой палец непосредственно на одну из своих основных недостатков), но так как iOS 5 был законным последовательным способом создания собственных родительских контейнеров-контроллеров. Поэтому я предлагаю вам просто сделать это.

Смежные вопросы