вопрос архитектуры вкладки iphone - PullRequest
0 голосов
/ 26 февраля 2011

В моем приложении есть две вкладки, которые обрабатывают разные потоки.

Для каждой вкладки я хочу иметь контроллер, который определяет (на основе информации в приложении), какой вид отображать.

Таким образом, вы нажимаете на вкладку 1, приложение проходит некоторую логику и отображает либо Вид B, либо Вид C. Оттуда я использую контроллер навигации для перехода к другим представлениям на этой вкладке.

Чтобы справиться с первоначальной логикой определения того, какой вид (B или C) отображать, у меня есть контроллер вида (вид A), связанный с вкладкой, которая обрабатывает всю логику. Моя проблема в том, что если я нажму на вкладку 1, когда я уже «на» вкладке, она отобразит представление для представления А, которое является пустой страницей.

Кто-нибудь имеет представление о том, как это сконструировать или сделать так, чтобы представление для представления А никогда не отображалось?

Ответы [ 2 ]

0 голосов
/ 27 февраля 2011

UITabBarControllerDelegate

в вашей реализации:

tabBarController:shouldSelectViewController:

вы должны попытаться определить, находитесь ли вы уже на первой вкладке или нет.если это так, просто верните NO, и он не появится на корневом контроллере (в данном случае A)

0 голосов
/ 26 февраля 2011

Идея, лежащая в основе модели MVC, заключается в том, что такая логика выполняется не ViewControllers, а моделью.

Вы можете создать класс или метод, целью которых является принятие решения между представлением B или C, вызовсоответствующий метод по нажатию кнопки и отображения вида в зависимости от результата.

Моя точка зрения такова: то, как вы описываете это, не должно существовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...