ios - 在 iOS 中显示和隐藏状态栏+更改 View Controller 之间的状态栏文本颜色

标签 ios objective-c ios7-statusbar

关于 iOS 7 状态栏颜色和可见性的另一个问题......在我的解决方案中我想要拥有所有这些东西:

  • 状态栏将在 View Controller 上隐藏和显示(带有动画),以响应用户操作(当用户滑动东西时)
  • 当新的 View Controller 推送到导航 Controller 时,状态栏中文本的颜色应从黑色变为白色
  • 当新的 View Controller 出现时,状态栏应该始终显示

我在使用“基于 View Controller 的状态栏外观”plist 设置时遇到问题;当否时,我可以显示和隐藏状态栏,但不能更改颜色;而当设置为 YES 时,反之亦然。

最佳答案

在 plist 中使用基于 View Controller 的状态栏外观为“否”,它可以工作。

例如-> 可以说在 viewcontroller1 中,我有下面的代码

-(void)viewDidAppear:(BOOL)animated{
    [super viewDidAppear: animated];
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault animated:YES];
}

我从 viewcontroller1 推送 viewcontroller2 ,其代码如下

-(void)viewDidAppear:(BOOL)animated{
    [super viewDidAppear: animated];
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent animated:YES];
}

使用上面的代码在模拟器中测试时,它完美地动画了这些变化。

关于ios - 在 iOS 中显示和隐藏状态栏+更改 View Controller 之间的状态栏文本颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21981766/

相关文章:

iphone - 用于在 iOS 7 上崩溃的弹出 View Controller 的平移手势

ios - 有没有办法使用 Apple 内置的 iOS 条码 API 扫描 5 位附加条码?

ios - 子 Controller 更新父 TableView 中单元格的标签

iOS7 导航栏+状态栏文字颜色

ios - 在不清除空间的情况下隐藏 iOS 7 中的状态栏?

ios - 在多个设备上下载 iOS 开发的配置文件

iphone - 应用程序加载器 (Apple) 卡在 "Sending API usage to iTunes Connect"

iphone - iPad 的横向应用程序没有主屏幕横向

objective-c - 在 Objective C 类别中使用 Super?

ios - 在 iOS 7 中隐藏导航栏时如何更改状态栏的颜色?