如何在NIB文件中添加顶部布局指南或如何从顶部导航栏和状态栏指定空间,以便它不会在ios 6和iOS 7之间产生问题?
答案 0 :(得分:26)
您可以通过在iOS7 SDK中实现名为edgesForExtendedLayout的新属性来实现此目的
-(void)viewDidLoad {
if ([self respondsToSelector:@selector(edgesForExtendedLayout)])
self.edgesForExtendedLayout = UIRectEdgeNone;
}
或
如果您正在使用导航栏和xcode5,那么..
在Interface Builder中,选择视图控制器,然后导航到属性检查器。在“延伸边缘”。检查顶部栏下
我已经从Here
解决了我的问题答案 1 :(得分:2)
我认为你需要为此编写这个条件
float SystemVersion=[[[UIDevice currentDevice] systemVersion] floatValue];
if(SystemVersion<7.0f)
{
//Currently your app is running in IOS6 or older version. So you need not
to do anything.
}
else
{
// Currently your app is running in IOS7.
}
答案 2 :(得分:-2)
我是以编程方式进行的。
因为你必须检查ios 7和其他的两种框架尺寸
因为状态栏你必须管理IOS 7和其他的20像素
所以,只需在任何IOS中将View放入XIB中,您可以通过此方式管理其他...
CGSize result = [[UIScreen mainScreen] bounds].size;
if(result.height == 480)
{
NSArray *vComp = [[UIDevice currentDevice].systemVersion componentsSeparatedByString:@"."];
if ([[vComp objectAtIndex:0] intValue] >= 7) {
NSLog(@"Ios7 resize the frame");
}
else
{
}
}
if(result.height == 568)
{
NSArray *vComp = [[UIDevice currentDevice].systemVersion componentsSeparatedByString:@"."];
if ([[vComp objectAtIndex:0] intValue] >= 7) {
NSLog(@"Ios7 resize the frame");
}
else
{
}
希望这会有所帮助......