Как я могу получить доступ к экземпляру _tabBar из UITabBarController - PullRequest
0 голосов
/ 14 марта 2009

Я пытаюсь получить доступ к экземпляру _tabBar из UITabBarController. Я пытаюсь скрыть tabBar в определенных ситуациях, для этого я добавил расширение для UITabBarController, где я могу получить доступ к экземпляру _tabBar и вызвать сообщение setHidden. Это работает при компиляции для симулятора, но когда я компилирую для устройства, я получаю следующую ошибку

"_ OBJC_IVAR _ $ _ UITabBarController._tabBar", на который ссылаются из: _OBJC_IVAR _ $ _ UITabBarController._tabBar $ non_lazy_ptr в UITabBarController + TabBar.o

Что мне нужно добавить в флаги моего компилятора? и почему это работает при компиляции для симулятора.

Заранее спасибо.

Ответы [ 2 ]

3 голосов
/ 17 июля 2009

Согласно Документам для UITabBarController:

Вы никогда не должны пытаться манипулировать сам объект UITabBar хранится в это свойство. Если вы пытаетесь сделать Итак, представление панели вкладок бросает исключение. Чтобы настроить элементы для интерфейс панели вкладок, вы должны вместо этого назначьте одно или несколько пользовательских представлений контроллеры для viewControllers имущество. Панель вкладок собирает необходимые элементы панели вкладок из представления контроллеры, которые вы указываете.

Представление панели вкладок, предоставляемое этим свойство только для ситуаций, когда Вы хотите отобразить лист действий используя showFromTabBar: метод класс UIActionSheet.

Если вы помещаете свой UITAbBarController в стек контроллера навигации, вы можете установить для свойства hidesBottomBarWhenPhed значение YES, и это будет работать.

Может также быть другой API в суперклассе UITAbBarController, который сделает это. Если нет, то вы можете пройтись по иерархии подпредставлений и скрыть необходимую.

0 голосов
/ 24 января 2010

Доступно с iPhone OS 3.0

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