TTStyledTextLabel
Я пытаюсь заставить этот элемент управления работать с гипертекстовой ссылкой без особого успеха. Я посмотрел на TTCalaog и попытался повторить, но не работает.
У меня это работает, насколько отображение гипертекстовой ссылки, но он не срабатывает.
TTStyledTextLabel * label = [[[TTStyledTextLabel alloc] initWithFrame: CGRectMake (5, 0, 315, 175)] autorelease];
NSString * labelText = @ "Это должно работать";
label.text = [TTStyledText textFromXHTML: labelText lineBreaks: NO URLs: YES];
[self.view addSubview: label];
Мне кажется, я здесь упускаю смысл, возможно, из-за размещения URL-адреса Google? Я видел пост на этом форуме, в котором используется custom-uri://some/url, который затем настраивается в TTURLMap и TTNavigator, но мне нужно открыть URL-адрес из гипертекста в веб-представлении, поэтому мне нужен URL для запустить метод в моем классе, который создает мой контроллер веб-просмотра и т. д.
Я пытался настроить TTURLMap для работы без TTNavigator, но полностью замаринованный?
Любая помощь gratefullt приветствуется;-)
Спасибо
1 ответ
Я только что нашел решение, чтобы поймать нажатый URL на TTStyledTextLabel. Я надеюсь, что это может помочь и в вашем случае.
Это то, что я сделал.
1. Создать ТТНавигатор
TTNavigator *navigator = [TTNavigator navigator];
navigator.persistenceMode = TTNavigatorPersistenceModeNone;
navigator.delegate = self;
2. Создайте TTNavigatorDelegate
Как вы назначили себя делегатом объекта навигатора. Поэтому, пожалуйста, не забудьте добавить протокол в файл заголовка.h, прежде чем продолжить.
В реализации создайте этот метод
- (BOOL) navigator:(TTBaseNavigator *)navigator shouldOpenURL:(NSURL *)URL {
// Now you can catch the clicked URL, and can do whatever with it
// For Example: In my case, I take the query of the URL
// If no query is available, let the app open the URL in Safari
// If there's query, get its value and process within the app
NSString *query = URL.query;
if (query == nil) {
return YES;
} else {
// process the query
}
}
Надеюсь, это поможет! Пожалуйста, проголосуйте за меня, если это поможет решить вашу проблему!
С уважением,
Танг