7

我在UITabBarController中使用UINavigationController,我的導航控制器中的其中一個屏幕是UIImageView。當我想要全屏顯示該圖像時,我必須隱藏導航欄和標籤欄。我可以正確隱藏導航欄,但是當我隱藏標籤欄時,會留下50px的空白區域。任何建議?代替隱藏標籤欄的白色空間

+1

自包含的樣本對理解正在發生的事情很有用。嘗試編輯你的問題。謝謝。 – 2012-02-03 11:57:04

+0

從iOS 8開始,所有「will-rotation-functions」都將被棄用。 [所以現在我的解決方案來處理這個問題。] [1] [1]:http://stackoverflow.com/a/29772254/2242687 – MPajak 2015-04-21 13:19:25

回答

7

謝謝你爲所有 我找到了我的問題的最佳解決方案。

MyImageViewController.hidesBottomBarWhenPushed = YES ; 
[self.navigationController pushViewController:MyImageViewController animated:YES]; 

它給了我想要的迴應。 感謝您的分享

0

您可以增加圖像視圖框架的高度。

+0

我做它已經,但它沒有做任何事情。問題仍然存在。 – SamehDos 2012-02-03 12:07:21

2

我想你可以在模型視圖控制器上顯示它。 將modelviewcontroller放在tabbarcontroller上。

FullImageView*objFullImageView = [[FullImageView alloc] initWithNibName:@"FullImageView" bundle:nil]; 
objFullImageView.image = OriginalImage; 
UINavigationController *tempNav = [[[UINavigationController alloc] initWithRootViewController:objFullImageView] autorelease]; 
[objFullImageView release]; 
self.tabBarCtrl.modalPresentationStyle = UIModalPresentationPageSheet; 
[self.tabBarCtrl presentModalViewController:tempNav animated:YES]; 

FullImageView.h

{ 
    UIImage *image; 
} 
@property(nonatomic, retain) UIImage *image; 

FullImageView.m

@synthesize image; 

viewDidLoad /ViewWillApper 
{ 
    //Set image in your UIImageView  
} 
+0

你能解釋一下嗎? – SamehDos 2012-02-03 12:37:02

+1

你必須創建一個新的類。然後創建該類的對象並將該對象顯示爲modelviewcontroller。我編輯了我的答案。 – 2012-02-03 13:03:10

+1

而且您並不需要隱藏導航控制器以及tabbar。 – HiddenDeveloper 2012-02-03 13:18:19

0

自原來的帖子已經有相當長的時間了,但我想我可以跳進來補充我的想法。

另一種選擇是直接在故事板內設置選項Hide bottom bar on push,用於在TabBar控制器內的導航控制器內推送的所有控制器。這也適用於iOS7模擬器/目標,在3.5「和4」。