Ссылки в текстовых представлениях являются интерактивными, только если текстовое представление выбирается, но не редактируется.
set editable false & amp; selectable true:
text.isEditable = false
text.isSelectable = true
Чтобы получить выделенный текст из textview, который является ключевым в вашем случае, используйте следующую функцию:
func textView(_ textView: UITextView, shouldInteractWith URL: URL, in characterRange: NSRange) -> Bool {
if let key = textView.text.substring(with: characterRange){
if let value = dictionary[String(key)]{
print("text :",value)
alert(value: value)
}
}
return false
}
Использование расширения для строки, чтобы получить подстроку с диапазоном:
extension String {
func substring(with nsrange: NSRange) -> Substring? {
guard let range = Range(nsrange, in: self) else { return nil }
return self[range]
}
}
Я думаю, что самый простой путь состоял бы в том, чтобы предоставить документ как ссылку (цель = "_ пробел") от страницы деталей. Это имеет несколько преимуществ:
Даже если Вам не нравится та идея, определенно пойдите с Обработчиком HTTP для передачи документа. Это реально простой сделать: при создании нового Обработчика HTTP в Visual Studio, она уже должна дать Вам хорошую страницу со всей бесполезной работой, сделанной.
Существует управление Silverlight, способное к отображению документов XPS. См. http://firstfloorsoftware.com/blog/announcement-document-toolkit-for-silverlight/ для больше