【问题标题】:Add Hyperlink to Storyboard using Swift使用 Swift 将超链接添加到 Storyboard
【发布时间】:2019-02-11 20:05:08
【问题描述】:

我想为我的主故事板添加一个链接,但似乎找不到方法。我看过一篇详细说明如何执行here 的帖子,但似乎行为选项不同,并且没有任何检测选项。任何帮助,将不胜感激。

【问题讨论】:

  • 运行最新的 xcode 和 iOS 我可以在您提到的链接中看到详细的选项。它们现在被称为“数据检测器”,但它们仍直接位于“行为”下
  • 对于标签,我看到的唯一行为选项是启用和突出显示;没有检测或数据检测器。对于 TextField,属性检查器中根本没有 Behavior 或 Detection 选项,但 Text Input Traits 下有一个 Content Type URL,但是点击它什么也不做。也许我使用了错误的字段类型? XCode 9.4.1、iOS 10.13.6
  • 如您发送的链接中所述,这些选项仅在 textView 上可用。它适用于嵌入链接的大量文本。如果您想要一个简单的超链接,您可以使用标签,将文本设为蓝色并添加点击手势
  • 如果全文有链接?如果不是,不要使用UILabel,使用UITextView。如果是,您可以使用UILabel,但您必须添加点击手势。
  • 将点击手势添加到标签效果很好。为什么这个问题被否决了?

标签: ios swift xcode hyperlink


【解决方案1】:

根据建议,向标签添加轻击手势可实现简单的超链接。这是我在 ViewController 中使用的代码:

@IBOutlet weak var contactUrl:  UIView!

var webView = WebViewClient()


@objc func contactUrlTapped(_ sender: UITapGestureRecognizer)
{
    let myURL = URL(string: "https://google.com")

    let myRequest = URLRequest(url: myURL)

    webView.load(myRequest)
}

override func viewDidLoad()
{
    super.viewDidLoad()

    let contactUrlAction = UITapGestureRecognizer(target: self, action: #selector(self.contactUrlTapped(_:)))
    contactUrl.isUserInteractionEnabled = true
    contactUrl.addGestureRecognizer(contactUrlAction)
}

【讨论】:

    猜你喜欢
    • 2012-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-13
    • 1970-01-01
    • 1970-01-01
    • 2014-01-10
    • 1970-01-01
    相关资源
    最近更新 更多