iOS7 开始,之前的就pass吧。
1 全屏布局概念:(0.0)点的位置相关
self.edgesForExtendedLayout = UIRectEdgeAll;// 全屏布局的拓展方向,默认与下面设置模糊属性有关。
// 2016-03-22 12:56:20.438 pad[3076:864505] {{0, 0}, {375, 603}} 不拓展,会是self.view 变小,即不使用全屏布局
self.navigationController.navigationBar.translucent = YES;// bar 的模糊属性,默认开启,(同理还有其他bar)
// 2016-03-22 12:54:37.673 pad[3025:855787] {{0, 0}, {375, 667}} YES,默认开启全屏布局,相当于又设置了上面的 All
// 2016-03-22 12:55:11.424 pad[3049:859647] {{0, 0}, {375, 603}} NO,默认关闭全屏布局,相当于又设置了上面的 None
2 LayoutGuide 相关 iOS7 提供 topGuide ,bottomGuide。iOS9 开始可以自定义Guide
// UILayoutGuide 可以看做是一个View,在bar 存在时,它就覆盖在上面,与bar位置大小一致!自动布局时注意使用。
// 简单举例 系统的自动布局
[self.view addConstraint:[NSLayoutConstraint constraintWithItem:self.tableView
attribute:NSLayoutAttributeTop
relatedBy:NSLayoutRelationEqual
toItem:self.topLayoutGuide
attribute:NSLayoutAttributeBottom
multiplier:1
constant:12]];
// (xib中拉布局时,默认就是竖直的间距,所以就是bottom开始)
// 使用masonry自动布局时,注意没法直接使用 self.topLayoutGuide ,对应的是 mas_topLayoutGuide
```
## 3 对ScrollerView 的 一个调整:self.view 上第一个 ScrollerView 类时,content 往下以64px
self.automaticallyAdjustsScrollViewInsets = NO;// 默认YES:```
网友评论