Ios 如何在Swift中使用addAttribute

Ios 如何在Swift中使用addAttribute,ios,swift,Ios,Swift,我正在尝试添加到UITextView的链接,因此我遵循中的代码。相关的Objective-C代码为 NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"This is an example by @marcelofabri_"]; [attributedString addAttribute:NSLinkAttributeName

我正在尝试添加到UITextView的链接,因此我遵循中的代码。相关的Objective-C代码为

NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"This is an example by @marcelofabri_"];
[attributedString addAttribute:NSLinkAttributeName
                         value:@"username://marcelofabri_"
                         range:[[attributedString string] rangeOfString:@"@marcelofabri_"]];
但当我在Swift 2中尝试这一点时

var attributedString = NSMutableAttributedString(string: "This is an example by @marcelofabri_")
attributedString.addAttribute(NSLinkAttributeName, value: "username://marcelofabri_", range: attributedString.string.rangeOfString("/marcelofabri_"))
我得到了错误

无法使用类型为“(字符串,值:字符串,范围:范围?)的参数列表调用“addAttribute”


要使其正常工作,我需要做哪些更改?

根据需要,您使用的是Range而不是NSRange。看看:


尝试使用
NSString
而不是Swift
String
查找范围:

var attributedString = NSMutableAttributedString(string: "This is an example by @marcelofabri_")
attributedString.addAttribute(NSLinkAttributeName, value: "username://marcelofabri_", range: (attributedString.string as NSString).rangeOfString("/marcelofabri_"))

问题是我使用的是
NSAttributedString
而不是
NSMutableAttributedString