如何更改 LaunchScreen 导航控制器的色调颜色

Posted

技术标签:

【中文标题】如何更改 LaunchScreen 导航控制器的色调颜色【英文标题】:How to change the tint color of navigation controller of LaunchScreen 【发布时间】:2016-06-06 17:45:03 【问题描述】:

我正在尝试将 Launchscreen 的导航控制器的色调更改为白色

我正在尝试将该代码添加到我的AppDelegate,它适用于除 LaunchScreen 之外的所有 ViewController:

navigationController.navigationBar.barStyle = UIBarStyle.Black
navigationController.navigationBar.tintColor = UIColor.whiteColor()

色调是黑色,我想改成白色。

【问题讨论】:

你是说状态栏颜色吗? 检查这个链接它真的会帮助你。 ***.com/questions/18897362/…> 我最初误解了你的问题,所以请查看我的edited answer,更改状态栏颜色非常容易。 【参考方案1】:

那不是UINavigationBar,那是UIStatusBar。使用

UIApplication.sharedApplication.statusBarStyle = .LightContent

(参见doc,在 ios 9 中已弃用)

对于 iOS 9,视图控制器“自己”决定,因此为您的初始屏幕故事板实例化的任何视图控制器都应该覆盖

func preferredStatusBarStyle() -> UIStatusBarStyle

并返回.LightContent。 (参见doc)

【讨论】:

另外,好像没有 NavigationController。 设置颜色应用范围的最简单方法是什么?是否也设置了my answer 'deprecated' 中的 plist 值? 在实现此功能的所有其他视图控制器中使用您继承自的基类。 但是不能认为 plist 键的使用已被弃用,对吧? (在 Apple 的iOS Information Property List Key Reference 中找不到相关信息)。那么这不是全局设置颜色的最简单方法吗? 如果您可以在 iOS 9 中使用 statusBarStyle 进行设置,那将是这样,但我找不到这样做的方法。然而,根据您的代码库,在基类中插入实现并从例如UIStatusBarViewController 而不是 UIViewController【参考方案2】:

在 Info.plist 文件中设置这些属性

添加这个

UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.LightContent

在 AppDelegate 的 didFinishLaunchingWithOptions 方法中

【讨论】:

【参考方案3】:

试试这个

self.navigationController?.navigationBar.barTintColor = UIColor.whiteColor()

【讨论】:

没有导航控制器。所以这不会有任何作用。【参考方案4】:

设置状态栏颜色应用范围

如果您想设置状态栏的颜色应用范围(在启动屏幕中也是如此),您应该将此添加到您的info.plist(右键单击> 添加行):

Status bar style = UIStatusBarStyleLightContent


来自 Apple 的Information Property List Key Reference 的有关此密钥的更多信息

密钥UIStatusBarStyle Xcode 名称Status bar style UIStatusBarStyleLightContent = 白色,UIStatusBarStyleDefault = 黑色 摘要:指定应用启动时状态栏的样式。详情请见UIStatusBarStyle。

【讨论】:

这不会影响状态栏吧? 那你为什么建议这个呢?从屏幕截图和描述中可以清楚地看出 OP 将状态栏命名为错误,请参阅我的回答。 哦,好吧,我明白了,OP 想要在状态栏中显示白色文本。我会更新我的帖子。【参考方案5】:

通过 Xcode UI 可以轻松做到这一点:

您的应用 -> 目标 -> 常规选项卡

适用于深色应用背景。您可以使用“Light Content”模式。

【讨论】:

以上是关于如何更改 LaunchScreen 导航控制器的色调颜色的主要内容,如果未能解决你的问题,请参考以下文章

编程转换丢失导航栏

导航架构组件 - 如何使用导航控制器设置/更改自定义后退或汉堡图标?

如何更改 iOS 中导航控制器的工具栏颜色?

如何从不同的视图控制器更改导航栏图像

导航控制器内的iOS ScrollView + Page Controller:如何更改每个页面的导航栏标题?

如何通过界面生成器更改导航项标题?