2015-08-26 21 views
5

Sto cercando di aggiungere collegamenti a UITextViews, quindi sto seguendo il codice in this post. Il codice Objective-C rilevante èCome utilizzare addAttribute in Swift

NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"This is an example by @marcelofabri_"]; 
[attributedString addAttribute:NSLinkAttributeName 
         value:@"username://marcelofabri_" 
         range:[[attributedString string] rangeOfString:@"@marcelofabri_"]]; 

Ma quando provo questo a Swift 2 come

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

ottengo l'errore

non può invocare 'AddAttribute' con una lista di argomenti di digita '(Stringa, valore: Stringa, intervallo: intervallo?)'

Cosa mi serve per cambiare e per farlo funzionare?

risposta

24

Provare a utilizzare NSString per trovare gamma invece di 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_")) 
+0

Il problema era che stavo usando 'NSAttributedString' invece di' NSMutableAttributedString' –

Problemi correlati