在ios7 布局中,Status Bar 和 ToolBar ,NavigateBar 等都包含在ViewControl的主View中。
这样原来ios6 的View布局 整体向上移动了20dp,下面是保证ios6,ios7代码一致的解决方案
1 第一步 在项目的Info.plist 文件中 添加一行属性配置
View controller-based status bar appearance =NO
这个设置为:View Controller 不对status Bar 显示进行操作
2 第二步 在AppDelegate.m 文件中,
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
添加
if
([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) {
[application setStatusBarStyle:UIStatusBarStyleLightContent];
self
.window.clipsToBounds =
YES
;
self
.window.frame = CGRectMake(0,20,
self
.window.frame.size.width,
self
.window.frame.size.height-20);
//added on 19th Sep
self
.window.bounds = CGRectMake(0, 20,
self
.window.frame.size.width,
self
.window.frame.size.height);
}
|
判断为Ios7 ,更新 window.frame