码迷,mamicode.com
首页 > 移动开发 > 详细

IOS7 导航栏适配二

时间:2015-06-25 19:29:01      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:

ios7下的app都是全屏的,意思就是所有控制器的view默认都是从  屏幕的 (0,0)开始。 

这时候用到导航栏时,往往会出现被导航栏挡住情况。

最明显的是用到tableView时,第一行的数据会被导航栏遮盖

两种解决方法:

一、在控制器下设置导航控制器的导航栏的translucent(半透明)属性为NO,translucent属性在ios6之前默认为no,而在ios7下的导航栏默认却是半透明的,为yes,所以该属性不会占据空间。前提是你不需要导航栏半透明效果。

二、在控制器下设置导航控制器的导航栏的translucent(半透明)属性为NO,translucent属性在ios6之前默认为no,而在ios7下的导航栏默认却是半透明的,为yes,所以该属性不会占据空间。前提是你不需要导航栏半透明效果。

@property(nonatomic,assign) UIRectEdge edgesForExtendedLayout NS_AVAILABLE_IOS(7_0); // Defaults to UIRectEdgeAll
@property(nonatomic,assign) BOOL extendedLayoutIncludesOpaqueBars NS_AVAILABLE_IOS(7_0); // Defaults to NO, but bars are translucent by default on 7_0.  
@property(nonatomic,assign) BOOL automaticallyAdjustsScrollViewInsets NS_AVAILABLE_IOS(7_0); // Defaults to YES
属性edgesForExtendedLayout,意思大概是边缘向四周展开

edgesForExtendedLayout 值是结构体。默认值是  UIRectEdgeAll,也就是上下左右填充满整个屏幕。 

  // 1. UIRectEdgeNone  不要往四周边缘展开 (  按照非 iOS7  的传统来展示 )

设置完这一句,压入桟的控制器frame的y值就是从导航条下面开始。

 

 

IOS7 导航栏适配二

标签:

原文地址:http://www.cnblogs.com/cuiyw/p/4600595.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!