iOS7导航栏遮盖问题的解决

来源:互联网 发布:泰拉瑞亚作弊软件 编辑:程序博客网 时间:2024/04/30 22:27

在开发iOS7的界面的时候,有时候你会发现UIViewController里的subView有时会被导航栏遮盖,原因是iOS7鼓励全屏布局,UIViewController中的self.view的坐标原点是从导航栏的原点开始算起,如果你不想self.view的起始点从导航栏原点开始计算,你只要设定:

self.edgesForExtendedLayout = UIRectEdgeNone;

这个属性的默认值是UIRectEdgeAll,四周编译均延伸。设置完之后你会发现self.view的起始点从导航栏下沿开始,当然这时self.view的高度还是原来的高度,你要手动减去导航栏的高度(iOS7默认导航栏高度为64)。

不过这种设置iOS7是不鼓励的,这样UIView的控件都回到了iOS6时代,而且你回发现当popViewController的时候,self.view相对于导航栏会有延时。

其实在构造subView的时候,你可以手动的减去导航栏的高度也可以达到避免遮盖的问题。

0 0
原创粉丝点击