EdgesForExtendedLayout
在IOS7 之后viewController有一个新的属性叫做edgesForExtendedLayout,这个属性指定viewController的view边缘延伸的方向,默认情况下是UIRectEdgeAll,所以view是向四周延伸的。这是属性是针对于viewController上的self.view的。
(1)先试试看默认情况下是什么样子

view是向四周延伸的,所以view的上部分会被Navigationbar遮住。

可以看出self.view的frame发生了变化。

一开始self.view的Y轴=0,高度为568(这边以iphone5的屏幕),现在的self.view的Y轴=64,高度也变成了504,相当于self.view往里面缩了64
此时布局的时候则需要从Y=0开始布局。包括Scrollview或者他的子类,如果此时设置automaticallyAdjustsScrollViewInsets测试下来发现已经不起作用了。
edgesForExtendedLayout 同样也适用于tabBar、statusBar的情况下,下面是Navigation和tabBar一起使用的情况
1.edgesForExtendedLayout = UIRectEdgeAll

2.edgesForExtendedLayout = UIRectEdgeNone

上面的情况是viewcontroller先压入Navigation,在压入tarBar。
但是如果先压入tabBar再压入Navigation的时候情况是不一样的
此时在设置edgesForExtendedLayout = UIRectEdgeNone

self.view上部分还是延伸了。
EdgesForExtendedLayout的更多相关文章
- IOS7 edgesForExtendedLayout
在iOS 7中,苹果引入了一个新的属性,叫做[UIViewController setEdgesForExtendedLayout:],它的默认值为UIRectEdgeAll.当你的容器是naviga ...
- edgesForExtendedLayout,automaticallyAdjustsScrollViewInsets, extendedLayoutIncludesOpaqueBars的影响
在IOS7以后 ViewController 开始使用全屏布局的,而且是默认的行为通常涉及到布局 就离不开这个属性 edgesForExtendedLayout,它是一个类型为UIExtendedEd ...
- [IOS]edgesForExtendedLayout、automaticallyAdjustsScrollViewInsets
在IOS7以后 ViewController 开始使用全屏布局的,而且是默认的行为通常涉及到布局 就离不开这个属性 edgesForExtendedLayout,它是一个类型为UIExtendedEd ...
- iOS7 edgesForExtendedLayout -- 解决冲突 / 系统偏移
今天在做UISearchBar,UISearchDisplayController时遇到了一个问题,在点击搜索栏时阴影部分的位置出现偏差 如下图: 始终觉得很奇怪,后面单独做了一个demo,将同样的代 ...
- iOS edgesForExtendedLayout、extendedLayoutIncludesOpaqueBars、automaticallyAdjustsScrollViewInsets属性详解
edgesForExtendedLayout: 在IOS7以后 ViewController 开始使用全屏布局的,而且是默认的行为通常涉及到布局,就离不开这个属性 edgesForExtendedLa ...
- UIViewController的edgesForExtendedLayout属性
UIViewController的edgesForExtendedLayout属性 想必大家都遇到一种情况,明明y坐标设置的是0,但是总是被讨厌的导航栏给遮住.比如下面这个情况: UILabel *l ...
- edgesForExtendedLayout、extendedLayoutIncludesOpaqueBars、automaticallyAdjustsScrollViewInsets属性详解 )——转载
edgesForExtendedLayout: 在ios7适配中,布局问题是一个很头痛也很重要的问题,因为在ios7中viewController使用了全屏布局的方式,也就是说导航栏和状态栏都是不占实 ...
- IOS7新特性 edgesForExtendedLayout
edgesForExtendedLayout是一个类型为UIExtendedEdge的属性,指定边缘要延伸的方向. 因为iOS7鼓励全屏布局,它的默认值很自然地是UIRectEdgeAll,四周边缘均 ...
- 使用edgesForExtendedLayout遇到的麻烦
今天在写一个多界面之间来回返回的工程时,遇到的问题,建了两个类:FirstViewController 和 ButtonViewController. 由 FirstViewController 进入 ...
随机推荐
- [原创]与来自facebook的朋友交流
与来自facebook的朋友交流 老板的儿子在facebook工作,现在正好有个假期回来,老总让我们部门与之进行一次交流.其实主要是他讲一下那边情况,然后我们准备些问题,多扩展一下我们见识. 流程 交 ...
- 发布大幅重构优化的 TouchVG 1.0.2
发布大幅重构优化的 TouchVG 1.0.2,支持SVG.多模块扩展结构,欢迎评阅改进.提交pull request. https://github.com/rhcad/touchvg 关于 Tou ...
- js转html实体
方法一: 用的浏览器内部转换器实现转换,方法是动态创建一个容器标签元素,如DIV,将要转换的字符串设置为这个元素的innerText,然后返回这个元素的innerHTML,即得到经过HTML编码转换的 ...
- 【原创】C#搭建足球赛事资料库与预测平台(3) 基础数据表设计
本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html 开源C#彩票数据资料库系列文章总目录:http://www.cn ...
- Java -- 根据当前日期获取当前一周的所有日期
Learn From:http://my.oschina.net/hermer/blog/151274 /** * 测试 * @param args */ public static void mai ...
- bootstrap插件学习-bootstrap.alert.js
我们先看bootstrap.alert.js的结构 var dismiss = '[data-dismiss="alert"]' //自定义属性 Alert = function ...
- Redis设计与实现-附加功能
发布与订阅 redis订阅分为精准的频道订阅与模糊匹配的模式订阅: redis将所有频道的订阅关系都保存在服务器状态pubsub_channels字典里,键是频道名,值是一个记录所有订阅此频道的客户端 ...
- ThroughRain学期冲刺总结
团队名:ThroughRain 项目确定:<餐厅到店点餐系统> 项目背景:本次项目是专门为餐厅开发的一套订餐系统.大家有没有发现在节假日去餐厅吃饭会超级麻烦,人很多, 热门的餐厅基本没有座 ...
- 6/19 sprint3 看板和燃尽图的更新
- 使用Eclipse Installer安装Eclipse
由于一些原因,需要重新安装Eclipse,登陆到Eclipse官网下载Eclipse时发现社区又推出了Eclipse Installer.所以就下下来尝尝鲜. 刚开始确实有些选项不太明白,不过现在挺喜 ...