簡體   English   中英

您如何使用TTStyledTextLabel?

[英]Just how to you use TTStyledTextLabel?

我想要的是在我的viewController中顯示一些簡單的文本,並自動進行超鏈接。 當用戶點擊鏈接時,我希望控件以某種方式進行回調,我可以使用URL執行某些操作。 我怎樣才能做到這一點?

我已經查看了TTCatalog幾個小時了。 我也嘗試查看three20的源代碼以及查看堆棧跟蹤。 沒有幫助。 我無法弄清楚我的應用程序如何對URL的點擊做出反應。 有什么提示嗎?

沒有看到你已經嘗試過的東西很難幫助,但你應該能夠做如下的事情:

TTStyledTextLabel* label = [[[TTStyledTextLabel alloc] 
        initWithFrame:someFrame] autorelease];
NSString* labelText = @"This should <a href=\"custom-uri://some/url\">work</a>";
label.text = [TTStyledText textFromXHTML:labelText lineBreaks:NO URLs:YES];
[someView addSubview:label];

然后,您可以使用TTNavigatorTTURLMapcustom-uri://some/url映射到應用程序中的特定控制器,或者在應用程序委托中TTURLMap處理。 查看如何執行此操作的最佳位置是查看Three20源中包含的TTNavigatorDemo示例應用程序。 具體來說,請查看AppDelegate.m ,它是執行所有URL映射的地方。

除了Nathan關於URL映射和鏈接的說法之外,您還可以使用CSS樣式!

TTStyledTextLabel* label = [[[TTStyledTextLabel alloc] initWithFrame:someFrame] autorelease];
NSString* labelText = @"This should <a href=\"custom-uri://some/url\">work</a> and 
<span class=\"redText\">this should be red</span>";
label.text = [TTStyledText textFromXHTML:labelText lineBreaks:NO URLs:YES];
[someView addSubview:label];

然后在你的StyleSheet.m工具中

- (TTStyle*) redText {
  return [TTTextStyle styleWithFont:[UIFont systemFontOfSize:12] color:RGBCOLOR(255,0,0) next:nil];
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM