edgesForExtendedLayout ios7新特性
2016-01-25 10:24
465 查看
edgesForExtendedLayout是一个类型为UIExtendedEdge的属性,指定边缘要延伸的方向。
因为iOS7鼓励全屏布局,它的默认值很自然地是UIRectEdgeAll,四周边缘均延伸,就是说,如果即使视图中上有navigationBar,下有tabBar,那么视图仍会延伸覆盖到四周的区域。
来解决UINavigationBar透明的问题。设置了UIRectEdgeNone之后,你嵌在UIViewController里面的UITableView和UIScrollView就不会穿过UINavigationBar了,同时UIView的控件也回复到了iOS6时代。
不过这个对于StatusBar在iOS7上面的变化是无效的,正确的说应该是部分无效。在存在Navigation部分或者Tabbar部分的时候,上面的代码可以使得StatusBar也不载透明(有待验证,毕竟UIViewController的可用空间被控制了),但是在没有这两个部分的时候,StatusBar依旧是会记入UIView范围的。
因为iOS7鼓励全屏布局,它的默认值很自然地是UIRectEdgeAll,四周边缘均延伸,就是说,如果即使视图中上有navigationBar,下有tabBar,那么视图仍会延伸覆盖到四周的区域。
self.edgesForExtendedLayout = UIRectEdgeNone;
来解决UINavigationBar透明的问题。设置了UIRectEdgeNone之后,你嵌在UIViewController里面的UITableView和UIScrollView就不会穿过UINavigationBar了,同时UIView的控件也回复到了iOS6时代。
不过这个对于StatusBar在iOS7上面的变化是无效的,正确的说应该是部分无效。在存在Navigation部分或者Tabbar部分的时候,上面的代码可以使得StatusBar也不载透明(有待验证,毕竟UIViewController的可用空间被控制了),但是在没有这两个部分的时候,StatusBar依旧是会记入UIView范围的。
相关文章推荐
- iOS解析数据时Error=3840
- iOS之轻松上手block(下)
- 在企业内部分发 iOS 应用程序
- js判断安卓或者ios
- iOS之轻松上手block(上)
- iOS开发之Masonry(六)
- ios tableView那些事 (六) 如何处理tableView上的文字
- ios开发笔记--关于delegate(委托)的使用心得
- ios开发笔记--委托机制详解及代码
- ios开发笔记--状态栏的自定义,隐藏
- iOS开发笔记--Layer 图层圆角、边框 、底纹其他常用操作
- iOS开发笔记--应用首次启动显示用户引导
- iOS开发笔记--iOS开发 使用NSUserDefaults 保存数据
- IOS开发用户登录注册模块所遇到的问题
- iOS开发笔记--声明全局变量
- iOS开发笔记--自定义Zbar扫描界面
- iOS开发笔记--TableView详解(2)
- iOS开发笔记--多个Section的TableView
- iOS开发笔记--TableView的详细使用
- Xcode下的DerivedData文件