为 UINavigationController 标题中的单个单词设置字体
Set font for single word in title of UINavigationController
我有一个 UINavigationController
设置为 prefersLargeTitles = true
我想设置标题,而不是
Discogs |搜索框
上面写着
Discogs |搜索框
但是我看不到如何通过属性文本设置文本。
这可能吗? 我正在以编程方式构建视图。
我看到 navigationController?.navigationBar.largeTitleTextAttributes
属性 但因为它只接受 key/value 对,我不相信这可以用来应用这种效果。
对于大标题:
您可以创建自定义视图(带有标题标签)并对导航栏设置约束:
customView.widthAnchor.constraint(equalToConstant: 200).isActive = true
customView.heightAnchor.constraint(equalToConstant: 44).isActive = true
self.navigationItem.titleView = customView
常规标题:
您可以为 navigationItem 的 titleView 设置自定义标签:
let navLabel = UILabel()
let navTitle = NSMutableAttributedString(string: "Discogs", attributes:[
NSAttributedStringKey.font: UIFont.boldSystemFont(ofSize: 17.0),
NSAttributedStringKey.foregroundColor: UIColor.black])
navTitle.append(NSMutableAttributedString(string: " | Search Box", attributes:[
NSAttributedStringKey.foregroundColor: UIColor.black,
NSAttributedStringKey.font: UIFont.systemFont(ofSize: 17.0, weight:
UIFont.Weight.light)]))
navLabel.attributedText = navTitle
self.navigationItem.titleView = navLabel
来源:
我有一个 UINavigationController
设置为 prefersLargeTitles = true
我想设置标题,而不是
Discogs |搜索框
上面写着
Discogs |搜索框
但是我看不到如何通过属性文本设置文本。
这可能吗? 我正在以编程方式构建视图。
我看到 navigationController?.navigationBar.largeTitleTextAttributes
属性 但因为它只接受 key/value 对,我不相信这可以用来应用这种效果。
对于大标题:
您可以创建自定义视图(带有标题标签)并对导航栏设置约束:
customView.widthAnchor.constraint(equalToConstant: 200).isActive = true
customView.heightAnchor.constraint(equalToConstant: 44).isActive = true
self.navigationItem.titleView = customView
常规标题:
您可以为 navigationItem 的 titleView 设置自定义标签:
let navLabel = UILabel()
let navTitle = NSMutableAttributedString(string: "Discogs", attributes:[
NSAttributedStringKey.font: UIFont.boldSystemFont(ofSize: 17.0),
NSAttributedStringKey.foregroundColor: UIColor.black])
navTitle.append(NSMutableAttributedString(string: " | Search Box", attributes:[
NSAttributedStringKey.foregroundColor: UIColor.black,
NSAttributedStringKey.font: UIFont.systemFont(ofSize: 17.0, weight:
UIFont.Weight.light)]))
navLabel.attributedText = navTitle
self.navigationItem.titleView = navLabel
来源: