3 回答

TA貢獻1825條經(jīng)驗 獲得超6個贊
edgesForExtendedLayout
if ([self respondsToSelector:@selector(edgesForExtendedLayout)]) self.edgesForExtendedLayout = UIRectEdgeNone;
-(void)viewDidLoad
IOS 7會給布局和自定義您的外觀帶來一些更改。 UI..視圖控制器布局、色調(diào)顏色和字體的更改將影響所有 烏伊基特對象在您的應(yīng)用程序中。此外,對手勢識別器API的增強為您提供了對手勢交互的更細粒度的控制。 使用視圖控制器
在IOS 7中,視圖控制器使用全屏布局.同時,IOS 7對視圖控制器的視圖布局方式提供了更細粒度的控制。特別是,全屏布局的概念已經(jīng)被細化,讓視圖控制器指定其視圖的每個邊緣的布局。
這個 wantsFullScreenLayout
視圖控制器屬性在IOS 7中不建議使用。 wantsFullScreenLayout = NO
在iOS 7中運行時,視圖控制器可能會在意外的屏幕位置顯示其內(nèi)容。
若要調(diào)整視圖控制器的視圖布局方式, UIViewController
提供下列屬性:
EDgesfortendedLayout
這個 edgesForExtendedLayout
屬性使用 UIRectEdge
類型,它除了指定“無”和“全部”之外,還指定矩形的四個邊中的每一個。使用 edgesForExtendedLayout
指定應(yīng)擴展視圖的哪些邊緣,而不管條形半透明。默認情況下,此屬性的值為 UIRectEdgeAll
.
擴展LayoutIncludeesOpaqueBars
如果您的設(shè)計使用不透明的條,請改進。 edgesForExtendedLayout
還可以通過設(shè)置 extendedLayoutIncludesOpaqueBars
財產(chǎn) 不..(默認值為 extendedLayoutIncludesOpaqueBars
是 不.)
自動調(diào)整ScrollViewInset
如果不希望自動調(diào)整滾動視圖的內(nèi)容嵌入,請設(shè)置 automaticallyAdjustsScrollViewInsets
到 不..(默認值為 automaticallyAdjustsScrollViewInsets
是 是.)
TopLayoutGuide,底部LayoutGuide
這個 topLayoutGuide
和 bottomLayoutGuide
屬性指示視圖控制器視圖中頂部或底部條邊的位置。如果條形圖應(yīng)與視圖的頂部或底部重疊,則可以使用InterfaceBuilder將視圖相對于該條定位,方法是在 topLayoutGuide
或者到底層指南的頂端。(如果沒有條形圖應(yīng)重疊視圖,則 topLayoutGuide
與視圖的頂部和 bottomLayoutGuide
與視圖底部相同。)這兩個屬性都是在請求時延遲創(chuàng)建的。

TA貢獻1831條經(jīng)驗 獲得超9個贊
-[UIViewController edgesForExtendedLayout]
[self setEdgesForExtendedLayout:UIRectEdgeNone];

TA貢獻1757條經(jīng)驗 獲得超7個贊
- (void) viewDidLayoutSubviews { // only works for iOS 7+ if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) { CGRect viewBounds = self.view.bounds; CGFloat topBarOffset = self.topLayoutGuide.length; // snaps the view under the status bar (iOS 6 style) viewBounds.origin.y = topBarOffset * -1; // shrink the bounds of your view to compensate for the offset viewBounds.size.height = viewBounds.size.height + (topBarOffset * -1); self.view.bounds = viewBounds; }}
- 3 回答
- 0 關(guān)注
- 742 瀏覽
添加回答
舉報