如何在 Swift 5 中单击超链接时推送视图控制器

How to push view controller on click of HyperLink in Swift 5

您好,我必须在单击超链接时推送 viewController。我有 NSMutableAttributedString 文本。该属性文本有两个 hyperlink 示例 GoToHomeScreenaboutUs 都是点击 aboutUs[=21 时的超链接=] 需要打开一个工作正常的 link

    let attributesString = NSMutableAttributedString(string: "GoToHomeScreen for know more about app and for info aboutUs ")
    attributesString.addAttribute(.link, value: "https://apple.com/aboutUs", range: NSRange(location: 50, length: 7))
    textFields.isEditable = false
    textFields.delegate = self
    textFields.attributedText = attributesString

打开 aboutUs 工作正常,但我们如何在点击 GoToHomeScreen 时推送视图控制器

注意:- 我正在使用 UITextView 来执行它,我不能使用按钮

您还需要为 GoToHomeScreen 添加 link。

attributesString.addAttribute(.link, value: "myApp://GoToHomeScreen", range: ...)

因为你已经设置了委托,实现 textView(_:shouldInteractWith:in:interaction:):

func textView(_ textView: UITextView, shouldInteractWith URL: URL, in characterRange: NSRange, interaction: UITextItemInteraction) -> Bool {

    if URL.absoluteString == "myApp://GoToHomeScreen" {
        pushHomeScreenVC()
        return false
    }
    return true
}