我的应用程序背景较暗,但在iOS 7中,状态栏变得透明.所以我看不到任何东西,只有角落里的绿色电池指示灯.如何将状态栏文本颜色更改为白色,就像在主屏幕上一样?
我最近下载了Xcode 5 DP来测试我在iOS 7中的应用程序.我注意到并确认的第一件事是我的视图边界并不总是调整大小来考虑状态栏和导航栏.
在viewDidLayoutSubviews
,我打印视图的边界:
{{0,0},{320,568}}
这导致我的内容出现在导航栏和状态栏下方.
我知道我可以通过获取主屏幕的高度,减去状态栏的高度和导航栏的高度来解释自己的高度,但这似乎是不必要的额外工作.
我该如何解决这个问题?
更新:
我找到了解决这个特定问题的方法.将导航栏的半透明属性设置为NO:
self.navigationController.navigationBar.translucent = NO;
Run Code Online (Sandbox Code Playgroud)
这将修复视图在导航栏和状态栏下面的框架.
但是,当您希望导航栏为半透明时,我还没有找到解决此案例的方法.例如,在全屏查看照片时,我希望导航栏是半透明的,并且要在其下方构建视图.这是有效的,但当我切换显示/隐藏导航栏时,我经历了甚至更奇怪的结果.第一个子视图(UIScrollView)每次都会更改其边界.
我正在创建一个应用程序,我想隐藏状态栏.当我测试应用程序时,状态栏会在显示启动画面时隐藏,但是一旦应用程序完全加载,状态栏就会重新出现.
我正在使用Xcode 5和iOS 7,并尝试以编程方式禁用状态栏
([[UIApplication sharedApplication] setStatusBarHidden:YES
withAnimation:UIStatusBarAnimationFade];),
Run Code Online (Sandbox Code Playgroud)
在info.plist文件中,并使用.xib文件上的属性检查器.什么都没有效果.
有任何想法吗?
ios7 ×4
ios ×3
statusbar ×2
hidden ×1
ios6 ×1
objective-c ×1
textcolor ×1
uistatusbar ×1
xcode ×1
xcode5 ×1