Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/94.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS中带有NSAttribute文本的UILabel中未突出显示的超链接_Ios_Swift_Hyperlink_Uilabel_Nsattributedstring - Fatal编程技术网

iOS中带有NSAttribute文本的UILabel中未突出显示的超链接

iOS中带有NSAttribute文本的UILabel中未突出显示的超链接,ios,swift,hyperlink,uilabel,nsattributedstring,Ios,Swift,Hyperlink,Uilabel,Nsattributedstring,我正在显示带有属性文本的标签。标签包含一些超链接。 我知道这些只能在文本视图中单击,但我认为它们会在包含NSAttributed文本的UILabel中显示为蓝色并带下划线 在我的例子中,链接与其他文本(不是蓝色或下划线)没有任何不同。是否需要更改UILabel的任何属性以使链接在UILabel中显示为蓝色? let style = NSMutableParagraphStyle() style.lineBreakMode = NSLineBreakMode.ByWordWrapping let

我正在显示带有属性文本的标签。标签包含一些超链接。 我知道这些只能在文本视图中单击,但我认为它们会在包含NSAttributed文本的UILabel中显示为蓝色并带下划线

在我的例子中,链接与其他文本(不是蓝色或下划线)没有任何不同。是否需要更改UILabel的任何属性以使链接在UILabel中显示为蓝色?

let style = NSMutableParagraphStyle()
style.lineBreakMode = NSLineBreakMode.ByWordWrapping
let attributes = [NSFontAttributeName: self.defaultFont(), NSParagraphStyleAttributeName: style]
let attributedString = NSAttributedString(string: "www.somelink.com", attributes: attributes)
label.attributedText = attributedString

您需要将
NSLinkAttributeName
属性添加到
nsAttributeString
中,如下所示:

attributedString.addAttribute(NSLinkAttributeName, value: "www.somelink.com", range: attributedString.string.rangeOfString("www.somelink.com"))

请检查您需要的范围。

您需要将
NSLinkAttributeName
属性添加到
nsattributeString
中,如下所示:

attributedString.addAttribute(NSLinkAttributeName, value: "www.somelink.com", range: attributedString.string.rangeOfString("www.somelink.com"))

请检查您需要的范围。

您需要NSLinkAttributeName。以上答案应该有效

let style = NSMutableParagraphStyle()
style.lineBreakMode = NSLineBreakMode.ByWordWrapping
let attributes = [NSFontAttributeName: self.defaultFont(), NSParagraphStyleAttributeName: style]
let attributedString.addAttribute(NSLinkAttributeName, value: "www.somelink.com", range: attributedString.string.rangeOfString("www.somelink.com"))
label.attributedText = attributedString

您需要NSLinkAttributeName。以上答案应该有效

let style = NSMutableParagraphStyle()
style.lineBreakMode = NSLineBreakMode.ByWordWrapping
let attributes = [NSFontAttributeName: self.defaultFont(), NSParagraphStyleAttributeName: style]
let attributedString.addAttribute(NSLinkAttributeName, value: "www.somelink.com", range: attributedString.string.rangeOfString("www.somelink.com"))
label.attributedText = attributedString

在我的例子中,文本可以包含随机用户输入的链接。如何检测任何链接而不是特定链接?还是约会/电话?我试图在外观上复制UITextView的行为,但没有可单击功能。Swift 3.0,您应该使用
NSMutableAttributedString
而不是
NSAttributedString
。在我的情况下,文本可以包含随机用户输入的链接。如何检测任何链接而不是特定链接?还是约会/电话?我试图在外观上复制UITextView的行为,但没有可单击功能。Swift 3.0,您应该使用
NSMutableAttributedString
而不是
NSAttributedString