How to increase the character spacing in UILabel

后端 未结 6 761
孤独总比滥情好
孤独总比滥情好 2020-12-23 21:23

I am creating an app in >=iOS6. And I want to change the character spacing in UILabel. I have added the custom font \"FUTURABT HEAVY\" in my app but the Character are too cl

6条回答
  •  清歌不尽
    2020-12-23 21:50

    Swift 4

    extension UILabel {
    
       func setCharacterSpacing(characterSpacing: CGFloat = 0.0) {
    
            guard let labelText = text else { return }
    
            let attributedString: NSMutableAttributedString
            if let labelAttributedText = attributedText {
                attributedString = NSMutableAttributedString(attributedString: labelAttributedText)
            } else {
                attributedString = NSMutableAttributedString(string: labelText)
            }
    
            // Character spacing attribute
            attributedString.addAttribute(NSAttributedStringKey.kern, value: characterSpacing, range: NSMakeRange(0, attributedString.length))
    
            attributedText = attributedString
        }        
    
    }
    

    Swift 3

    let label = UILabel()
    let stringValue = "Sample text"
    let attrString = NSMutableAttributedString(string: stringValue)
    attrString.addAttribute(NSKernAttributeName, 2: style, range: NSRange(location: 0, length: stringValue.characters.count))
    label.attributedText = attrString
    

提交回复
热议问题