导航栏标题背景在iOS11中是白色的

时间:2017-09-22 02:57:43

标签: ios objective-c ios11

出于某种原因,在iOS 11中,导航栏中的标题标签具有白色背景:

navigation bar with white background for title

这只是一个普通的导航控制器,标题设置为默认方式:

self.title = @"My Title";

这个问题只发生在iOS 11中,屏幕截图是从模拟器中获取的,否则对于以前的iOS版本,这个工作正常。

有关我如何拥有正常的明确背景标签或删除因任何原因即将出现的白色背景的任何建议?

1 个答案:

答案 0 :(得分:2)

检查您是否正确设置了标题文本属性。您可以从Storyboard或Programatically设置标题文本属性。选择Storyboard -> NavigationBar -> Go to attribute inspector -> Title Text Attributes

enter image description here

或在ViewController中尝试手动设置

Swift 4:

         self.navigationController?.navigationBar.titleTextAttributes = [
            NSAttributedStringKey.foregroundColor: UIColor.white,
            NSAttributedStringKey.font: UIFont.systemFont(ofSize: 17, weight: .bold)
        ]

斯威夫特3:

        self.navigationController?.navigationBar.titleTextAttributes = [
            NSForegroundColorAttributeName: UIColor.white,
            NSFontAttributeName: UIFont.systemFont(ofSize: 17, weight: .bold)
        ]