【发布时间】:2014-12-09 15:21:29
【问题描述】:
我想制作一个UILabel,其中包含一些带有可点击链接的文本。不是指向网页的链接,而是指向我对UIButton 所做的操作。所以我使用了TTTAttributedLabel,它与Objective C 完美配合。现在我想在Swift做同样的事情,所以我写了下面的代码:
self.someLabel.text = NSLocalizedString("Lost? Learn more.", comment: "")
let range = self.someLabel.text!.rangeOfString(NSLocalizedString("Learn more", comment:""))
self.someLabel.addLinkToURL (NSURL(string:"action://Learn more"), withRange:NSRange (range))
但是,我无法使链接在Swift 中工作。我收到错误消息:“Missing argument for parameter 'host' in call” 最后一行。
【问题讨论】:
-
试试
NSURL(string:"action://learn-more") -
似乎问题出在 NSRange 上。迅速它只接受 Range
,我本来期望 Range 。因此,使用硬编码范围(如下所述)我能够编译代码,但我需要使其通用。 'self.someLabel.addLinkToURL (NSURL(string: "action://learn-more"), withRange:NSRange(location: 0, length: 5))'
标签: ios swift tttattributedlabel