我想更改导航栏标题中的字母间距,但到目前为止我还没有成功。
提前致谢。
答案 0 :(得分:3)
您可以通过代码传递标题字符串以及一些空白间距(“E x a m p l e”),或使用制表符(\ t)或通过以下代码设置标题:
let attributedString = NSMutableAttributedString(string: "Example")
attributedString.addAttribute(NSKernAttributeName, value: CGFloat(1.4), range: NSRange(location: 0, length: 9))
然后将referencedString指定给标题。
答案 1 :(得分:1)
波纹管功能对我有用,希望这对你有帮助
func setCharacterSpacig(string:String) -> NSMutableAttributedString {
let attributedStr = NSMutableAttributedString(string: string)
attributedStr.addAttribute(NSKernAttributeName, value: 1.25, range: NSMakeRange(0, attributedStr.length))
return attributedStr
}
答案 2 :(得分:0)
UILabel的不错扩展:
extension UILabel{
func setCharacterSpacing(_ spacing: CGFloat){
let attributedStr = NSMutableAttributedString(string: self.text ?? "")
attributedStr.addAttribute(NSAttributedString.Key.kern, value: spacing, range: NSMakeRange(0, attributedStr.length))
self.attributedText = attributedStr
}
}
用法:
label.setCharacterSpacing(4)