iOS7导航栏遮盖问题的解决
2015-06-18 12:51
344 查看
在开发iOS7的界面的时候,有时候你会发现UIViewController里的subView有时会被导航栏遮盖,原因是iOS7鼓励全屏布局,UIViewController中的self.view的坐标原点是从导航栏的原点开始算起,如果你不想self.view的起始点从导航栏原点开始计算,你只要设定:
这个属性的默认值是UIRectEdgeAll,四周编译均延伸。设置完之后你会发现self.view的起始点从导航栏下沿开始,当然这时self.view的高度还是原来的高度,你要手动减去导航栏的高度(iOS7默认导航栏高度为64)。
不过这种设置iOS7是不鼓励的,这样UIView的控件都回到了iOS6时代,而且你回发现当popViewController的时候,self.view相对于导航栏会有延时。
其实在构造subView的时候,你可以手动的减去导航栏的高度也可以达到避免遮盖的问题。
self.edgesForExtendedLayout = UIRectEdgeNone;
这个属性的默认值是UIRectEdgeAll,四周编译均延伸。设置完之后你会发现self.view的起始点从导航栏下沿开始,当然这时self.view的高度还是原来的高度,你要手动减去导航栏的高度(iOS7默认导航栏高度为64)。
不过这种设置iOS7是不鼓励的,这样UIView的控件都回到了iOS6时代,而且你回发现当popViewController的时候,self.view相对于导航栏会有延时。
其实在构造subView的时候,你可以手动的减去导航栏的高度也可以达到避免遮盖的问题。
相关文章推荐
- iOS图片拉伸技巧
- iOS 获取手机的型号,系统版本,软件名称,软件版本
- iOS聊天下拉刷新聊天记录的实现
- IOS中Cocoa对象的内存管理初探(简介)
- iOS第三方(ActionSheet)-JTSActionSheet
- iOS开发中用到的高效的宏定义
- IOS代码获取内存大小
- ios Notification 与多线程
- iOS中的动画
- openssl ios 公钥分段加解密
- iOS代码技巧之判断设备及状态
- IOS 时间 日历 处理集合
- iOS 中^block 示例
- ios图片拉伸方法
- IOS之Core Foundation框架和Cocoa Foundation框架的区别
- iOS开发系列--Grand Central Dispatch 基础教程:Part 1/2
- IOS cell 分割线从边框顶端开始
- [ios] compile exception about ARC
- iOS开发用到的强大的开源工具
- iOS链接错误,Undefined symbols for architecture arm64:std::__1::basic_string<char, std::__1::char_traits<