我想让工具栏(或导航栏)中的条形按钮项目文本变为粗体。我知道如何使用NSAttributedString手动更改字体颜色,如下所示:
button.setTitleTextAttributes([NSAttributedStringKey.foregroundColor: UIColor(red: 242/255, green: 133/255, blue: 94/255, alpha: 1.0)], for: .normal)
我也知道如何使用UIFont.boldSystemFont(ofSize: 12)
更改其他内容,例如使用NSFontAttributeName: UIFont(name: "Helvetica-Bold", size: 12.0)
的tableview单元格,但这不能用于上述内容。
是否有一种简单的方法来设置UIBarButtonItem粗体?
*编辑:其他类似的已回答问题显示只是使用CGRect
将字体类型更改为Helvetica-Bold,但是有没有办法让实际的系统字体加粗,或者是Helvetica-Bold的确切等效于系统字体粗体?
答案 0 :(得分:-3)
我认为它可以帮助你
extension NSMutableAttributedString {
@discardableResult func bold(_ text: String) -> NSMutableAttributedString {
let attrs: [NSAttributedStringKey: Any] = [.font: UIFont(name: ""AmericanTypewriter-Bold"", size: 12)!]
let boldString = NSMutableAttributedString(string:text, attributes: attrs)
append(boldString)
return self
}
@discardableResult func normal(_ text: String) -> NSMutableAttributedString {
let normal = NSAttributedString(string: text)
append(normal)
return self
}
}
并使用如下
let formattedString = NSMutableAttributedString()
formattedString
.bold("Bold Text")
button.setTitle(formattedString, for: .normal)