繁体   English   中英

带有 UILabel 的可点击动态链接

[英]Tappable Dynamic Links With UILabel

我正在寻找一种不涉及UITextView或 3rd 方框架的方法,在标签上制作多个可点击的链接。 附带说明,带有字符串的标签是从服务器获取的,因此我们不知道提前链接。

例如,假设有一个帖子,它有两个链接,每个链接都指向一个从服务器动态获取的随机站点。 在检测到它们是我可以做的链接之后,我将如何使它们可点击?

我已经搜索了 StackOverflow,没有重复或这个问题,我可以找到。 如果您发现与此问题完全相同的内容,请随时将其标记为重复。 我所看到的只是人们推荐使用UITextView 、第 3 方框架或使用属性字符串,但那时链接是已知的,它们不是动态获取的。

正如@DonMag指出的那样,在问题的评论中 - 我实际上可以使用UITextView并禁用滚动,这解决了我原来的原因,这让我转而使用UILabel来做。

如果你想用 UILabel 类来做,那么:

  • 将“isUserInteractionEnabled”属性设置为 true
  • 创建一个 Tap Gesture Recogniser 并将其分配给标签的手势识别器集合出口
  • 编写'IBAction func didTapLink(_ sender: Any)',它打开一个选定的链接并连接到点击手势识别器'sent action selector' outlet
  • 使用链接设置“文本”属性

如果您必须像在浏览器中一样显示链接,则:

  • 使用链接设置“attributedText”属性
  • 将“NSAttributedString.Key.link”属性添加到链接范围

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM