ios - 使用 Swift 制作可点击的 UILabel

标签 ios swift uilabel

我想使用 Swift 在 UILabel 文本中设置可点击的特定单词。

这可能吗?

如果这里有多个标签,我如何检测按下了哪个词?

最佳答案

你不能用简单的标签来做。

github 中有可用的库。

https://github.com/TTTAttributedLabel/TTTAttributedLabel

由此您可以使用名为 yourLabel.addLinkToURL() 的方法

class ViewController: UIViewController , TTTAttributedLabelDelegate{

    @IBOutlet var lbl: TTTAttributedLabel!
    override func viewDidLoad() {
        super.viewDidLoad()

        var str : NSString = "Hello this is link"
        lbl.delegate = self
        lbl.text = str as String
        var range : NSRange = str.rangeOfString("link")
        lbl.addLinkToURL(NSURL(string: "http://github.com/mattt/")!, withRange: range)
    }

    func attributedLabel(label: TTTAttributedLabel!, didSelectLinkWithURL url: NSURL!) {
        UIApplication.sharedApplication().openURL(url)
    }
}

enter image description here

关于ios - 使用 Swift 制作可点击的 UILabel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32010153/

相关文章:

ios - 更改UILabel的第一行颜色

ios - iOS 中自定义字体的问题

ios - OCMock测试类方法

ios - 如何在字典中添加值?

swift - Nimble - 期望等于 <0.9602>,得到 <0.9602>

Swift 3 UserDefaults 不保存

ios - UITextView 链接点击识别延迟

ios - UI Web View 或 WK Web View

android - 如何在文本小部件 flutter 中显示 html 字符串

ios - 如何找到 UILabel 中文本子字符串的 CGRect?