TTTAttributedLabel ссылки стилизуются, но не кликабельны
Я искал решение, чтобы заставить работать кликабельные ссылки. Я могу заставить это работать при использовании UITextView + NSAttributedString, но он просто не выполняет правильное автоматическое расположение, когда это UITableViewCell.
Теперь я добавил TTTAttributedLabel в свой проект, и он идеально подходит для стилей представлений. Ссылки также становятся синими и подчеркнуты.
Однако нажатие на них ничего не делает. Я реализовал TTTAttributedLabelDelegate на своем контроллере, сделал метку в раскадровке реализовать MyLabel (которая просто расширяет TTTAttributedLabel и имеет параметры делегата, так как я хочу, чтобы они запускались внутри одной и той же функции). Пока я установил контроллер в качестве делегата, я думал, что он может не работать, указывая на себя.
Но ни одна из этих функций не запускается, у меня есть точки останова и логины.
Я реализовал didSelectLinkWithUrl и didLongPressLinkWithUrl.
func attributedLabel(label: TTTAttributedLabel!, didSelectLinkWithURL url: NSURL!) {
Debug.log("link clicked")
}
func attributedLabel(label: TTTAttributedLabel!, didLongPressLinkWithURL url: NSURL!, atPoint point: CGPoint) {
Debug.log("link long clicked")
}
Выход
@IBOutlet weak var content: MyLabel!
MyLabel
импорт UIKit импорт TTTAttributedLabel
class MyLabel : TTTAttributedLabel, TTTAttributedLabelDelegate {
override func didMoveToSuperview() {
if (self.delegate == nil) {
self.delegate = self
}
self.enabledTextCheckingTypes = NSTextCheckingType.Link.rawValue
self.userInteractionEnabled = true
}
func attributedLabel(label: TTTAttributedLabel!, didSelectLinkWithURL url: NSURL!) {
Debug.log("link clicked")
}
func attributedLabel(label: TTTAttributedLabel!, didLongPressLinkWithURL url: NSURL!, atPoint point: CGPoint) {
Debug.log("link long clicked")
}
Кто-нибудь знает, чего мне не хватает?
Обновить
Я узнал, что просто вставил в URL ф / эhttp://example.com становится активным и фактически кликабельным, а didSelectLinkWithUrl становится кликабельным, хотя мне нужна приписанная строка, и она основана на строке HTML.