我在将文本和状态栏文本颜色更改为白色时遇到问题。
我希望所有的黑色文字都是白色的,有什么想法吗?
我见过很多解决方案,但似乎没有一个可以在iOS 7上运行
答案 0 :(得分:55)
我的解决方案是将以下内容添加到AppDelegate:
[[UINavigationBar appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName : [UIColor whiteColor]}];
斯威夫特3:
UINavigationBar.appearance().titleTextAttributes = [NSForegroundColorAttributeName: UIColor.white]
斯威夫特5:
UINavigationBar.appearance().titleTextAttributes = [NSAttributedString.Key.foregroundColor: UIColor.white]
答案 1 :(得分:29)
要将标题文字颜色变为白色,请将其放入viewDidLoad
self.navigationController.navigationBar.titleTextAttributes = @{UITextAttributeTextColor : [UIColor whiteColor]}
要将状态栏文字颜色更改为白色,请将其添加到视图中
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
答案 2 :(得分:12)
您可能想要做一些事情。
1)要更改标题的颜色:
self.navigationController.navigationBar.titleTextAttributes = @{NSForegroundColorAttributeName : [UIColor whiteColor]};
2)要更改条形按钮的颜色:
self.navigationController.navigationBar.tintColor = [UIColor whiteColor];
3)通过整个应用程序使状态栏文本颜色变为白色:
在项目plist 文件:
上UIStatusBarStyleLightContent
NO
NO
答案 3 :(得分:5)
您可以使用以下内容:
[self.navigationController.navigationBar setTitleTextAttributes:[NSDictionary dictionaryWithObject:[UIColor whiteColor] forKey:NSForegroundColorAttributeName]];
答案 4 :(得分:3)
这就是我做的..
执行以下操作,使整个应用程序的状态栏文本颜色为白色。
在项目plist
上投放文件:
状态栏样式:UIStatusBarStyleLightContent
View controller-based status bar appearance: NO
Status bar is initially hidden: NO
如果您希望在整个应用中采用相同的行为,则无需实施preferredStatusBarStyle
或致电setNeedsStatusBarAppearanceUpdate
。
答案 5 :(得分:3)
只需将 NSForegroundColorAttributeName
替换为 UITextAttributeTextColor
self.navigationController.navigationBar.titleTextAttributes = @{NSForegroundColorAttributeName : [UIColor whiteColor]};