Преминете от UISplitViewController Detail към Master Когато Master е UITabBarController?

Искам да премина от детайла (изглед на карта) към първия раздел в главния (UITabBarController), когато е избрано пояснение за анотация. Този първи раздел е табличен изглед, който искам да актуализирам.

Ако премина към изгледа на таблицата и използвам стил на преминаване на „замяна“, тогава губя лентата с раздели. Ако избера „push“, получавам грешка по време на изпълнение, че приемникът не е навигационен контролер.

Предполагам, че мога да премина към контролера на лентата с раздели, да задам булева стойност в изгледа на картата и след това да премина през преходите, за да стигна до мястото, където искам да бъда (изгледа на таблицата) или да използвам делегата на приложението, но бих искал по-елегантно решение, ако има такова.


person Michael Mangold    schedule 07.05.2012    source източник


Отговори (1)


Ако правилно разбирам вашето изискване, вие имате UITabBarController с някои раздели, които след това искат да избутат детайлен (карта) изглед върху него временно. Когато изгледът на картата бъде отхвърлен, искате ли да се върнете към същия първоначален UITabBarController?

За да направите това, по-доброто решение би било да натиснете изгледа на картата като "Модален" - в този случай той ще поеме екрана. Просто бъдете внимателни, тъй като не можете да отхвърлите модалния екран от самия себе си - в идеалния случай той трябва да бъде отхвърлен от контролера за изглед, който го е показал на първо място. Например в метода pripraveForSegue на класа, който избутва контролера за модален изглед, можете да предадете препратка обратно към себе си или да използвате делегат:

[modalViewController setParent:self];

Тогава в рамките на модалния клас, когато някакъв бутон или друго събитие задейства отхвърлянето, можете да имате:

[parent.modalViewController dismissModalViewControllerAnimated:YES];

Вижте: http://developer.apple.com/library/ios/#featuredarticles/ViewControllerPGforiPhoneOS/ModalViewControllers/ModalViewControllers.html за повече подробности.

person drb9979    schedule 08.05.2012
comment
Благодаря, че се отзовахте. Искам да актуализирам капитана от детайла, като използвам последователност. Не искам да натискам детайла (изглед на карта) върху капитана. - person Michael Mangold; 08.05.2012