我試圖隱藏UITabBarController和UINavigationController同時觸摸一個按鈕。我在這裏找到了一個非常漂亮的代碼片段How to hide uitabbarcontroller,但是我試圖隱藏和動畫UINavigationController和tabbarcontroller時遇到了問題。當他們使用self.tabBarController.tabBar.hidden = YES
隱藏標籤欄時,我還在互聯網上找到了很多示例,但只隱藏按鈕項目而不是底部的黑色欄。隱藏導航控制器和標籤欄控制器與動畫
在玩過很多遊戲後,我可以正確設置動畫,因爲我認爲它與導航控制器的隱藏有關,這使得整個窗口的大小可以隨時更改。
-(IBAction)touchImage:(id)sender {
if (isImageFullScreen) {
isImageFullScreen = NO;
[self.navigationController setNavigationBarHidden:NO animated:YES];
[UIView transitionWithView:self.view
duration:0.5
options:UIViewAnimationOptionCurveLinear
animations:^
{
hotelImageButton.frame = CGRectMake(0,20,320,92);
[self showTabBar:self.tabBarController];
}
completion:^(BOOL finished)
{
}];
} else {
isImageFullScreen = YES;
[self.navigationController setNavigationBarHidden:YES animated:YES];
[UIView transitionWithView:self.view
duration:0.5
options:UIViewAnimationOptionCurveLinear
animations:^
{
hotelImageButton.frame = CGRectMake(0,0,320,480);
[self hideTabBar:self.tabBarController];
}
completion:^(BOOL finished)
{
}];
}
}
的hideTabBar和showTabBar方法是從其他文章中,我上面鏈接的人。
我也嘗試了一些其他的組合,但我不能讓它看起來不錯。有任何想法嗎?
在此先感謝。
但除此之外,你是不是得到一個奇怪的動畫?酒吧移動怪異。就像一切盡在底部,然後出現一半,然後進行動畫製作。 – Chompas
不,它對我的預期效果。如果您只隱藏TabBar或導航欄,它是否適用於您? –
它工作,如果我只隱藏標籤欄。問題是當試圖隱藏兩者。 – Chompas