UITextView+Sweeter.swift 825 B

12345678910111213141516171819202122232425
  1. //
  2. // UITextView+Sweeter.swift
  3. //
  4. // Created by Yonat Sharon on 2019-02-08.
  5. //
  6. import UIKit
  7. public extension UITextView {
  8. /// Sweeter: Create a label with links, by using a `UITextView` to auto-detect links and simulate `UILabel` appearance.
  9. @available(iOS 9, *)
  10. @available(tvOS, unavailable)
  11. @available(macOS, unavailable)
  12. convenience init(simulatedLabelWithLinksInText: String, font: UIFont = UIFont.systemFont(ofSize: UIFont.labelFontSize)) {
  13. self.init()
  14. text = simulatedLabelWithLinksInText
  15. isEditable = false
  16. dataDetectorTypes = .link
  17. textAlignment = .center
  18. textContainerInset = .zero
  19. backgroundColor = .clear
  20. self.font = font
  21. constrain(.height, to: font.pointSize * 1.5) // swiftlint:disable:this no_magic_numbers
  22. }
  23. }