1

所以我正在開發一個應用程序,頂部有UINavigationBar,底部有UITabBar。而且我很難弄清楚視圖的真實可用高度。 我試着通過計算UINavigationBar高度和UITabBar高度來計算可用屏幕高度,並從主屏幕高度中減去它,但這仍然不是真正的大小。UINavigationBar + UITabBar可用屏幕高度

這裏是我的失敗,獲得可用的屏幕高度代碼:

CGRect screenRect = [[UIScreen mainScreen] bounds]; 
_screenHeight = screenRect.size.height; 
CGFloat tabBarHeight = _rootViewController.tabBar.frame.size.height; 
UINavigationController* navigatior = _rootViewController.viewControllers[0]; 
CGFloat navigationBarHeight = navigatior.navigationBar.frame.size.height; 
CGFloat visibleHeight = _screenHeight - navigationBarHeight - tabBarHeight; 

return visibleHeight; 

有沒有乾淨的方式知道在UINavigationBar的+ UITabBar基於應用程序的實際可用的屏幕尺寸?

回答

0

你不需要計算它,它會根據iPhone而變化。您最好的選擇和最簡單的方法是使用故事板,並將導航控制器和選項卡直接嵌入其中。完成之後,您可以使用自動佈局將視圖固定到酒吧,並且所有內容都將完全適合您。

+0

我不使用故事板,我喜歡基於xib的應用程序x)。除此之外,我會像你說的那樣使用自動佈局,這在我的大部分視圖控制器中都能很好地工作。除了這個,我有一個UIScrollView,所以我需要將內容大小設置爲正確的高度。 :/ 感謝您的迴應 – 6rod9