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";] 

Это работа для меня.

Другие вопросы по тегам