2012-05-06 31 views
2

因此,我對Three20相當陌生,但到目前爲止,這些好處已經超過了我的屁股所帶來的痛苦,以至於讓事情順利進行。如何設置TTStyledTextLabel的鏈接字體

我正在使用一些TTStyledTextLabels,我需要使用鏈接的特定字體。我已經覆蓋TTDefaultStyleSheet並且加入了全新的風格,就像這樣:

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

我可以使用標籤來應用這種風格到普通的文本,但似乎並沒有影響到鏈接。

我發現,如果我直接添加樣式類的鏈接,如

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

則鏈接會出現在正確的字體。但是,他們不再可以打! WTF?

+0

我有完全相同的問題!好的是,你的問題的第一部分幫助我理解如何將TTStyle與類關聯起來,但是後來又出現了問題:鏈接沒有更多的可移植性。 – tomsoft

回答

0

Got it!

與雙破折號,比鏈接樣式將與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>