我怎样才能使这个 UIBarButtonItem 变粗?

How can I make this UIBarButtonItem Bold?

我需要将此 UIBarButtonItem 文本设为粗体。我听起来很简单,但我想不通。

let nextButton = UIBarButtonItem(title: "Login", style: .plain, target: self, action: #selector(moveToSecond))

UIBarButtonItem 扩展 UIBarItemUIBarItem 具有 setTitleTextAttributes 功能。用它来设置粗体。

let nextButton = UIBarButtonItem(title: "Login", style: .plain, target: self, action: #selector(moveToSecond))
let attributes: [NSAttributedStringKey : Any] = [ .font: UIFont.boldSystemFont(ofSize: 16) ]
nextButton.setTitleTextAttributes(attributes, for: .normal)

这还允许您根据需要设置其他属性,例如颜色、下划线以及属性字符串支持的几乎所有内容。

当然,简单地将 style 设置为 .done 而不是 .plain 也可能会得到您想要的结果。这种方法的缺点是不能保证 .done 会呈现为粗体。这可能会在任何 iOS 更新中发生变化。

一个简单的解决方案是将 UIBarButtonItem 的样式更改为 .done