URL-адреса и изображения в TTStyledText
Привет, я создал TTStyledTextLabel, работает хорошо.
Теперь я хочу сделать URL кликабельным, я сделал это:
textLabel.text = [TTStyledText textFromXHTML:[content objectForKey:@"content"] lineBreaks:YES URLs:YES];
но мои ссылки все еще не кликабельны. Должен ли я сначала настроить UIWebView? Где это объявить?
Другое дело, можно ли изменить размеры изображений внутри моего TTStyledTextLabel, чтобы они соответствовали размеру метки?
заранее спасибо
// редактировать
что я точно сделал:
textLabel = [[TTStyledTextLabel alloc] initWithFrame:CGRectMake(0.0f, 70.0f, 320.0f, 297.0f)];
textLabel.contentInset = UIEdgeInsetsMake(20, 15, 20, 15);
textLabel.font = [UIFont systemFontOfSize:14];
textLabel.text = [TTStyledText textFromXHTML:[content objectForKey:@"content"] lineBreaks:YES URLs:YES];
[textLabel sizeToFit];
//CGFloat height = textLabel.height;
[scrollView addSubview:textLabel];
scrollView.contentSize = textLabel.frame.size;
NSLog моего [content objectForKey:@"content"]
возвращает что-то вроде этого:
<a href="http://www.abc.com/">Download-Link</a>
Мои ссылки выделены на моем ярлыке, но их нельзя кликнуть.
я инициализировал свою текстовую метку в - (void)viewDidLoad
в UIViewController
2 ответа
the [content objectForKey:@"content"] should return data containing <a href="url">string to display</a>
если вы добавите URL в TTURLMap, он также откроет соответствующий контроллер
следующий фрагмент кода должен работать
self = [super init];
TTStyledTextLabel* label = [[[TTStyledTextLabel alloc] initWithFrame:CGRectMake(0, 0, 320, 230)] autorelease];
label.text = [TTStyledText textFromXHTML:@"<a href=\"aa://link1\">link</a> text" lineBreaks:YES URLs:YES];
[label setFont:[UIFont systemFontOfSize:16]];
[[self view] addSubview:label];
//редактировать
Поэтому вам, вероятно, нужно сопоставить "*" в URLMap, если вы используете TTNavigator, что-то вроде:
TTNavigator* navigator = [TTNavigator navigator];
navigator.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
[navigator.window makeKeyAndVisible];
TTURLMap* map = navigator.URLMap;
[map from:@"*" toViewController:[TTWebController class]];
это сопоставит все URL-адреса с TTWebController, который откроет веб-просмотр для просмотра в
У меня та же проблема. Попробуйте использовать
[navigator setRootViewController:"your main controller";]
Это работа для меня.