它現在已經讓我感到絕望了幾周,但我無法找到如何在facebook iphone應用程序中獲取文本正文中的鏈接。Facebook式的文字「超鏈接」
作爲鏈接的特定單詞與文本的其餘部分顏色不同,單擊後顏色變化並且其周圍有一個灰色框。
我能想到的唯一方法就是使用UIWebView--但我非常肯定的是,這不是Facebook的做法。
任何想法? - 我需要將文本透露給另一個視圖 - 所以如果可能的話,它需要運行一個方法。
謝謝
它現在已經讓我感到絕望了幾周,但我無法找到如何在facebook iphone應用程序中獲取文本正文中的鏈接。Facebook式的文字「超鏈接」
作爲鏈接的特定單詞與文本的其餘部分顏色不同,單擊後顏色變化並且其周圍有一個灰色框。
我能想到的唯一方法就是使用UIWebView--但我非常肯定的是,這不是Facebook的做法。
任何想法? - 我需要將文本透露給另一個視圖 - 所以如果可能的話,它需要運行一個方法。
謝謝
您可以檢查出Three20庫,而這正是Facebook的內部是什麼坐鎮。你可以在裏面找到他們正在使用的確切解決方案。
但是,有些人發現Three20有點過頭了,因爲你必須導入大部分庫的唯一標籤。這就是爲什麼我個人更喜歡來自Craig Hockenberry的FancyUILabel,他在Twitterrific工作 - you can find it here。
希望這有助於 帕維爾
在Mac OS上可以嵌入使用NSAttributedString的超鏈接。由此產生的屬性字符串將包含顯示的網址,樣式和顏色。
在iPhone上渲染屬性文本,你將不得不使用CoreText(iOS 3.2及以上)。 可能UIWebView會更好,因爲它開箱即用,並且不需要3.2。
乾杯, 剋日什托夫·Zabłocki
我已經在我的iPhone應用程序的一個做相同。我使用過UIWebView。將代表設置爲自我。不管你想要顯示的鏈接,都將它放在ancor標籤中。在webView中加載你的html內容。然後執行下面的代理方法
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType
{
if (navigationType == UIWebViewNavigationTypeLinkClicked)
{
NSURL *URL = [request URL];
// Write your code here
}
}
當你點擊鏈接時,你會在回調方法中得到url(你已經給出了href屬性)。所以你可以執行任何你想要的操作。要顯示觸摸選擇,你可以在你的html內容中使用javascript。它效果很好。
這很好,但我不想使用這個 - 我想把鏈接放到UILabel中 - 我不想要「bounce」和帶有標準uiwebview標準的陰影陰影線條。不過謝謝。 – 2010-10-06 10:48:31
這個圖書館看起來很出色,但是我(正如很多人認爲的那樣,根據評論來判斷)在試圖實現它的過程中非常艱難。恥辱,因爲它看起來非常棒。將看看fancyUILabel。 :) – 2010-10-06 10:49:48
FancyUILabel - 它有點hacky,但它的確有竅門! :) – 2010-10-06 11:40:42