Piz*_*ngs 11 iphone objective-c ios6 ios7 xcode5
我正在用iOS7测试我的应用程序,我的状态栏有问题.基本上状态栏显示在导航栏上,如下图所示:

我试着打电话给我 viewDidLoad
self.edgesForExtendedLayout = UIRectEdgeNone;
self.automaticallyAdjustsScrollViewInsets = YES;
Run Code Online (Sandbox Code Playgroud)
没有成功.
我也没有运气添加到info.plist文件中UIViewControllerBasedStatusBarAppearance.
主要问题是应用程序必须与iOS6和iOS7兼容,目前在iOS7上,视图从顶部移动了20px.
edgesForExtendedLayout并且automaticallyAdjustsScrollViewInsets只是父视图控制器如何布局/管理视图的标准.看起来你正在使用UINavigationBar,而不是UINavigationController,这意味着除非你编写它们,否则这些属性不会做任何事情.
您可以切换到使用UINavigationController,也可以在iOS 7上以编程方式将UINavigationBar的高度从44更改为64.
添加一个出口到UINavigationBar.
float currentVersion = 7.0;
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= currentVersion) {
// iOS 7
self.navBar.frame = CGRectMake(self.navBar.frame.origin.x, self.navBar.frame.origin.y, self.navBar.frame.size.width, 64);
}
Run Code Online (Sandbox Code Playgroud)
您还可以隐藏状态栏,这可能是这些视图的更好方法,以获得更多的屏幕空间.
我在这里回答:
| 归档时间: |
|
| 查看次数: |
12355 次 |
| 最近记录: |