2

所以,我对 Three20 还很陌生,但到目前为止,收益已经超过了让事情正常进行所付出的痛苦。

我正在使用一些 TTStyledTextLabels,我需要为链接使用特定的字体。我已经覆盖了 TTDefaultStyleSheet 并添加了一个新样式,如下所示:

- (TTStyle*)futuraStyle {
    return [TTTextStyle styleWithFont:[UIFont fontWithName:@"Futura-CondensedMedium" size:20] color:kColorTextLink next:nil];
}

我可以使用标签将此样式应用于普通文本,但它似乎不会影响链接。

我发现如果我将样式类直接添加到链接中,如

<a href="url" class="styleName">link!</a>

然后链接确实以正确的字体显示。但是,它们不再是可点击的!怎么回事?

4

1 回答 1

0

知道了!

用双破折号设置链接中的名称,然后使用 UIConstrolState 参数调用链接样式,一切都会正常工作:

- (TTStyle*)futuraStyle:(UIControlState)state{
 if(state==UIControlStateNormal){
    return [TTTextStyle styleWithFont:[UIFont fontWithName:@"Futura-CondensedMedium" size:20] color:kColorTextLink next:nil];
 }else{
    return [TTTextStyle styleWithFont:[UIFont fontWithName:@"Futura-CondensedMedium" size:20] color:kColorTextLinkHiglighted next:nil];
 }
}

在你的文字中:

<a href="url" class="futuraStyle:">link!</a>
于 2012-08-08T21:40:23.513 回答