Sto tentando di visualizzare una stringa attribuita in una UITextview con collegamenti cliccabili. Ho creato un semplice progetto di test per vedere dove sto andando male e ancora non riesco a capirlo. Ho provato a abilitare l'interazione dell'utente e impostare il metodo delegato shouldInteractWithURLs, ma non funziona ancora. Ecco il mio codice (per un controller della vista che contiene solo un TextView)Come visualizzare i collegamenti selezionabili in UITextView
@IBOutlet weak var textView: UITextView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let string = "Google"
let linkString = NSMutableAttributedString(string: string)
linkString.addAttribute(NSLinkAttributeName, value: NSURL(string: "https://www.google.com")!, range: NSMakeRange(0, string.characters.count))
linkString.addAttribute(NSFontAttributeName, value: UIFont(name: "HelveticaNeue", size: 25.0)!, range: NSMakeRange(0, string.characters.count))
textView.attributedText = linkString
textView.delegate = self
textView.selectable = true
textView.userInteractionEnabled = true
}
Ed ecco i metodi delegato Ho implementato:
func textViewShouldBeginEditing(textView: UITextView) -> Bool {
return false
}
func textView(textView: UITextView, shouldInteractWithURL URL: NSURL, inRange characterRange: NSRange) -> Bool {
return true
}
Questo ancora non funziona. Ho cercato su questo argomento e nulla è stato ancora aiutato. Grazie mille in anticipo.
Grazie. In realtà l'ho appena scoperto subito dopo la pubblicazione (dopo aver trascorso diverse ore su questo già, vai a capire). Avevo già selezionato i collegamenti e selezionabili, ma avevo bisogno di deselezionare "Modificabile" per farlo funzionare. – jhk727
Rashwan, cosa succede se voglio rendere modificabile la vista del testo ma voglio anche il rilevamento automatico del link quando la vista testuale si dimette come primo risponditore, come nell'app iOS Notes? Posso farlo? – owlswipe
C'è un modo per farlo con modificabile? –