У меня есть TTTAttributedLabel и указанная пользовательский приписываемый маркер усечения для него:TTTAttributedLabel интерактивного усечение лексемы
NSAttributedString *atributedTruncationToken = [[[NSAttributedString alloc]
initWithString:@" More..."
attributes:@{
NSForegroundColorAttributeName : [UIColor lightGrayColor],
NSFontAttributeName : self.messageLabel.font,
NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType // no effect
}] autorelease];
[self.messageLabel setAttributedTruncationToken:atributedTruncationToken];
Это выглядит идеально, но как я могу сделать маркер кликабельным?
(В частности, мне нужно, чтобы ярлык расширялся, когда пользователь нажимает на токен, но не на остальной части метки).
ОБНОВЛЕНИЕ. Как я выяснил, что это возможно (IOS 7+), чтобы добавить ссылку на маркер, как и следующим образом: (?)
NSAttributedString *atributedTruncationToken = [[[NSAttributedString alloc]
initWithString:@" More..."
attributes:@{
NSForegroundColorAttributeName : [UIColor lightGrayColor],
NSFontAttributeName : self.messageLabel.font,
NSLinkAttributeName : [NSURL URLWithString:@"..."]
}] autorelease];
Но есть своего рода ошибка в этикетке TTTAttributed, что токен до сих пор не стал кликабельным, но n (n = token length
) последних символов текста ярлыка сделайте!
Я также сталкиваюсь с той же проблемой. Усеченный текст не кликается, а последние несколько символов нажимаются. Вы решаете эту проблему, если да, пожалуйста, дайте мне знать. – Aditya
Нет, я даже не пытался. Я только что реализовал свой собственный неуклюжий ярлык, используя CoreText, UIButton и делегат. Если это возможно, используйте новую версию TTTAttributedLabel. –
в новой версии также я сталкиваюсь с той же проблемой. Иногда она доступна, если усеченный токен находится в конце таблицы row.but, если он находится между строк, то он не работает – Aditya