- edgesForExtendedLayout 枚举值
typedef NS_OPTIONS(NSUInteger, UIRectEdge) {
UIRectEdgeNone = 0,
UIRectEdgeTop = 1 << 0,
UIRectEdgeLeft = 1 << 1,
UIRectEdgeBottom = 1 << 2,
UIRectEdgeRight = 1 << 3,
UIRectEdgeAll = UIRectEdgeTop | UIRectEdgeLeft | UIRectEdgeBottom | UIRectEdgeRight
} NS_ENUM_AVAILABLE_IOS(7_0);
效果1:self.edgesForExtendedLayout = UIRectEdgeAll;
image.png
效果2:self.edgesForExtendedLayout = UIRectEdgeTop;
image.png注意:UIRectEdgeNone 的情况,这个值和 automaticallyAdjustsScrollViewInsets = YES 有同样的效果,都会按照状态栏,导航栏,taBar 不重叠布局,注意属性有时候的效果会有重叠,根据需要调整
- edgesForExtendedLayout 控制的是绘制view 的Rect 区域问题
- automaticallyAdjustsScrollViewInsets 是处理在含有scollview的控件的页面y坐标的定位问题
- 两者在某些值的设定下,有些影响,根据需要调整。
如UIRectEdgeNone 时,automaticallyAdjustsScrollViewInsets 的设置是没有什么作用的,因为此时的Rect 区域就已经是正常(非重叠)的区域,automaticallyAdjustsScrollViewInsets 是基于nav bar /status bar /tabbar ,现在显示区域已经做好了基于这些bar 的调整,那么在此去调整就没有什么作用了
网友评论