Как включить гиперссылку в UILabel
У меня есть UILabel (загруженный html), который я ставлю на UIScrollView.
В html у меня есть много ссылок, которые я не могу получить "запуск" при нажатии.
Я добавил UserInteractionEnabled = true как на UILabel, так и на UIScrollview, но я не могу получить никакой реакции от нажатий на гиперссылки.
Это код, который создает ярлык с содержимым.
var attr = new NSAttributedStringDocumentAttributes();
var nsError = new NSError();
attr.DocumentType = NSDocumentType.HTML;
var entry = "some text and url <a href='http://www.google.com'>url</a>";
var myHtmlData = NSData.FromString(entry, NSStringEncoding.Unicode);
contentLabel.AttributedText = new NSAttributedString(myHtmlData, attr, ref nsError);
contentLabel.Frame = new CGRect(0, 20, scrollView.Frame.Size.Width , scrollView.Frame.Size.Height);
contentLabel.LineBreakMode = UILineBreakMode.WordWrap;
contentLabel.Lines = 0;
contentLabel.SizeToFit();
Может быть, это просто неправильно.. помещать html-контент в ярлык? Но я не хочу использовать веб-представление, поскольку оно не кажется масштабируемым настолько хорошо.
2 ответов:
Почему бы вместо этого не использовать UITextView ? Включить обнаружение ссылок и отключить редактируемые и выбираемые опции.
Добавление HTML в UILabel не сделает его интерактивным. Используйте
UITextViewили https://github.com/TTTAttributedLabel/TTTAttributedLabel
Comments