UITextView在iOS 7中无法检测链接和地址。

5
我有一个iOS应用程序,支持iOS 6和iOS 7。现在我正在UITextView中显示包含电子邮件地址和网站URL的文本。在iOS 6中,UITextView可以正确检测到它们,但在iOS 7中,当视图加载时无法检测到。但是,当我点击任何链接或电子邮件地址时,它开始检测所有链接/ URL。
这是iOS 7的一个错误吗?还是我错过了一些特别针对iOS 7的设置?以下是应用程序的截图:
1)在iOS 6+中视图加载后:
2)在iOS 7中视图加载后:
3)在iOS 7中我点击任何链接/电子邮件地址:
4)这是我在Interface Builder中为UITextView进行的设置:
我查看了一些链接,指出应该设置:
textView.text = nil;
textView.text = @"My required info";

但是以上代码没有成功。

有人能告诉我出了什么问题吗?谢谢。

3个回答

12

这似乎是iOS 7.0的UITextView中的一个bug。你应该查看NSDataDetector。你可以使用它来找到链接、电话号码等信息。http://nshipster.com/nsdatadetector/

似乎技巧是textView.scrollEnabled = NO。看起来可以解决问题,尽管如果你需要滚动的话。


9

看起来在7.1版中,当选择Selectable而不是Editable时,链接会被检测出来。

(IB报告:不支持配置:数据检测和可编辑属性是互斥的)


1

尝试重新输入“xyz@gmail.com”或其他地址。我也遇到了同样的问题,必须重新输入电子邮件地址而不是复制/粘贴它们。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接