Как скрыть UITabBar и показать UIToolBar? - PullRequest
0 голосов
/ 03 января 2012

Я прочитал несколько ответов на этот вопрос, но не мог понять, как это сделать. Я использую Xcode 4.2 с ARC и без раскадровок.

Я занимаюсь разработкой приложения на основе шаблона приложения TabBar и расширил его до 4 UITabBars. Я не использую UINavigationController, но вместо этого использую UINavigationBar рядом со строкой состояния. Когда приложение загружается с первой показанной вкладкой, у меня есть кнопка на UINavigationBar, и когда я нажимаю ее, я хочу скрыть UITabBar и вместо этого показать UIToolBar в том же месте, где UITabBar был расположен.

Я пытался скрыть и показать, используя свойство hidden (скрытие UITabBar и отображение UIToolBar). Что происходит, UITabBar скрыт, но UIToolBar показан над местом, где UITabBar был показан ранее. Это выглядит некрасиво, и я хочу, чтобы это было показано в самом низу экрана.

Я думаю, что не могу использовать hidesBottomBarWhenPushed, поскольку я не использую UINavigationController, а вместо этого использую панель навигации напрямую.

Кроме того, я хочу вернуться к отображению UITabBar и скрыть UIToolBar при нажатии той же кнопки на UINavigationBar.

1 Ответ

1 голос
/ 04 января 2012

Я не уверен, подойдет ли моя идея для вашего сценария. Вот оно ...

, но прежде позвольте мне сказать вам, что скрывается UITabBar, в отличие от сокрытия UINavigationBar не анимируется . Поэтому для меня сокрытие tabBar не является удобным для пользователя способом, если вы не создадите свой собственный подкласс UITabBarController, который анимирует скрытие UITabBar.

Вы можете использовать методы presentModalViewController:animated и dismissModalViewControllerAnimated:. ViewController, который отображается модально, может иметь UINavigationBar, он выскакивает из нижней части экрана и покрывает UITabBar анимацией.

Надеюсь, это поможет.

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIViewController_Class/Reference/Reference.html

...