UILabel+Extension.swift 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. //
  2. // UILabel+Extension.swift
  3. // AiKeyboard
  4. //
  5. // Created by Destiny on 2025/4/25.
  6. //
  7. import UIKit
  8. //设置行间距
  9. extension UILabel {
  10. /// 设置UILabel的行间距
  11. /// - Parameter spacing: 行间距的大小
  12. func setLineSpacing(_ spacing: CGFloat, alignment: NSTextAlignment = .left) {
  13. guard let labelText = self.text else { return }
  14. let paragraphStyle = NSMutableParagraphStyle()
  15. paragraphStyle.lineSpacing = spacing
  16. paragraphStyle.alignment = alignment
  17. let attributedString: NSMutableAttributedString
  18. if let labelAttributedText = self.attributedText {
  19. attributedString = NSMutableAttributedString(attributedString: labelAttributedText)
  20. } else {
  21. attributedString = NSMutableAttributedString(string: labelText)
  22. }
  23. // 添加行间距属性
  24. attributedString.addAttribute(
  25. .paragraphStyle,
  26. value: paragraphStyle,
  27. range: NSRange(location: 0, length: attributedString.length)
  28. )
  29. self.attributedText = attributedString
  30. }
  31. }