Как не заставить кнопку показывать UINavigationBar только на 3 из 5 вкладок в UITabBar? - PullRequest
0 голосов
/ 25 марта 2010

У меня есть приложение, в котором есть UITabBar с 5 вкладками. Когда пользователь встряхивает устройство, я хочу, чтобы UINavigationBar выдвигал UIImageView. Когда я показываю UIImageView, мне нужно скрыть панель вкладок и навигационную панель. После этого, когда пользователь касается UIImageView, снова появляется NavBar, и пользователь может перейти к родительскому представлению UIImageView. Я заставляю панель навигации выглядеть так:

[[self navigationController] setNavigationBarHidden: НЕТ анимированных: ДА];

Но на двух вкладках мне нужно сделать так, чтобы панель навигации отображалась, чтобы пользователь мог переключиться на родительский вид UIImageView, а затем, когда появится родительский вид, скрыть панель навигации. Как я могу это сделать?

Ответы [ 2 ]

0 голосов
/ 25 марта 2010

Это было проще, чем я думал. Я просто должен поставить

- (void)viewDidAppear:(BOOL)animated {
    [self.navigationController setNavigationBarHidden:YES animated:NO]; 
    [super viewDidAppear:animated];
}
0 голосов
/ 25 марта 2010

Я думаю, что вы должны установить делегат UITabBarController и реализовать этот метод:

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController
{
    // Put real logic here
    BOOL shouldHideNavBar = (viewController == myViewController1 || viewController == myViewController4);
    [[self navigationController] setNavigationBarHidden:shouldHideNavBar animated:YES];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...