它一直困扰我几个星期,但我无法找到如何在facebook iphone应用程序中获取文本正文中的链接。
作为链接的特定单词与文本的其余部分颜色不同,单击时会更改颜色并在其周围有灰色框。
我能想到的唯一方法是使用UIWebView - 但我非常肯定这不是facebook的方式。
有什么想法吗? - 我需要将文本透露给另一个视图 - 如果可能的话,它需要运行一个方法。
谢谢
答案 0 :(得分:2)
你可以查看Three20库,这正是facebook里面的内容。你可以找到他们在里面使用的确切解决方案。
然而,有些人认为Three20有点过头了,因为你必须为大部分标签导入大部分库。这就是为什么我个人更喜欢Craig Hockenberry的FancyUILabel,他曾在Twitterrific上工作过 - you can find it here。
希望这有帮助, 的Pawel
答案 1 :(得分:1)
我在我的一个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。它很棒。
答案 2 :(得分:0)
在Mac Os上,您可以使用NSAttributedString嵌入超链接。结果属性字符串将包含要显示的网址,样式和颜色。
在iphone上呈现属性文本,您必须使用CoreText(iOS 3.2及更高版本)。 可能UIWebView会更好,因为它开箱即用,并且不需要3.2。
干杯, KrzysztofZabłocki