5

我有一个 Tableview 并且 tableview 单元被定制为有一个 UILabel。UILabel 中的文本具有 URL。有没有办法检测 url,例如 UITextView 如何启用检测 URL,以便用户交互应该能够加载 url。

4

2 回答 2

5

如果您只想识别 URL,可以使用NSDataDetector检查NSTextCheckingTypeLink类型。

如果您想以不同的方式绘制 URL,并且您的目标是 iOS 6,您可以使用NSAttributedString将 URL 变为蓝色或为它们加下划线或其他方式。如果您的目标是较旧版本的 iOS,您可能希望在 Internet 上寻找一些免费代码来绘制样式文本,例如OHAttributedLabel.

如果你想真正让 URL 触摸敏感,你可以在标签上添加一个点击手势识别器,并尝试找出字符串的哪一部分被点击(有点复杂),或者在 Internet 上寻找一些已经免费的代码为你做(如OHAttributedLabel),或者只是UITextView在表格视图单元格中放置一个而不是标签。

于 2012-11-27T10:12:59.617 回答
-4

正如 Rob 指出的那样,我们如何才能做到这一点真是太棒了。

但是,我们可以使用机智,因此可以保存 ios 版本的问题(可能),只需使用 UILabel 和 UIButton。

我们需要做的是,无论是从 IB 还是故事板,只需放置一个带有字符串作为 URL 的 UILabel(使用它作为标题),比如说;

“www.myURL.com”

现在,在其上方放置一个 UIButton(自定义类型的按钮),然后使用“______”(下划线)并将此按钮设置为与您的 UILabel 重叠,并且“下划线”必须位于您的标签下方。

现在,只需在单击 URL 时根据需要执行任何您需要的按钮操作,您还可以在此处更改 textColor 等属性;还加载 URL 并导航到 UIWebView。

于 2012-11-27T11:12:34.020 回答