自安装iOS13以来,UITextView扩展仅自定义文本本身周围的背景(为白色),而不是整个UITextView。
如何确保整个UITextview对象的背景颜色更改为白色?
Extention:
extension UITextView { func hyperLink(originalText: String, hyperLink: String, urlString: String) { let style = NSMutableParagraphStyle() style.alignment = .center let attributedOriginalText = NSMutableAttributedString(string: originalText) let linkRange = attributedOriginalText.mutableString.range(of: hyperLink) let fullRange = NSMakeRange(0, attributedOriginalText.length) attributedOriginalText.addAttribute(NSAttributedString.Key.link, value: urlString, range: linkRange) attributedOriginalText.addAttribute(NSAttributedString.Key.paragraphStyle, value: style, range: fullRange) attributedOriginalText.addAttribute(NSAttributedString.Key.foregroundColor, value: UIColor.black, range: fullRange) attributedOriginalText.addAttribute(NSAttributedString.Key.backgroundColor, value: UIColor.white, range: fullRange) attributedOriginalText.addAttribute(NSAttributedString.Key.font, value: UIFont.systemFont(ofSize: 11), range: fullRange) self.linkTextAttributes = [ kCTForegroundColorAttributeName: UIColor.black, kCTUnderlineStyleAttributeName: NSUnderlineStyle.single.rawValue, ] as [NSAttributedString.Key : Any] self.attributedText = attributedOriginalText }//end func }
用法:
class LoginVC: UIViewController { @IBOutlet weak var disclaimerTextView: UITextView! override func viewDidLoad() { super.viewDidLoad() disclaimerTextView.hyperLink(originalText: "By continuing, you agree to our Terms and Privacy Policy found on our website", hyperLink: "website", urlString: WEBSITE_URL) } }
编辑:建议解决方案的输出-不起作用。
自安装iOS13以来,UITextView扩展仅自定义文本本身周围的背景(为白色),而不是整个UITextView。如何确保整个...
更改扩展名: