在ios中创建以符号'@'开头的单词可点击

Posted

技术标签:

【中文标题】在ios中创建以符号\'@\'开头的单词可点击【英文标题】:Create words starting with sign '@' Clickable in ios在ios中创建以符号'@'开头的单词可点击 【发布时间】:2013-10-24 05:24:25 【问题描述】:

我有一个表格视图,其中每一行都包含各种信息,如姓名、图片、消息等。

此消息可能包含一些以 '@''#' 开头的词。我想让这些词可点击,点击时我想打开另一个视图控制器而不是浏览器。

我知道我们可以在 textview 上为链接设置 UIDataDetector 类型,但这仅适用于链接。

有什么方法可以告诉 textview 检测匹配某个正则表达式的文本,然后使该文本可点击?

编辑: 终于我能做到了,对于还在处理这个问题的人,我写了一篇博文: http://www.uditagarwal.com/2013/10/make-different-words-in-uitextview.html

【问题讨论】:

简单回答 YES 你试过什么?或者你还没有尝试过?请分享一些代码。 如果你想玩,这里有一个 UILabel 的子类来让字母可点击:goo.gl/Of1nY7 【参考方案1】:

回答: GLTapLabel

在名为GLTapLabel 的类中有一个名为-drawTextInRect 的方法,其中包含一行代码:

BOOL hot = [word hasPrefix:@"#"] || [word hasPrefix:@"@"];

您只需在此处更改前缀值即可获得所需的结果。


有一个名为-labledidSelectedHotWord 的委托方法。您可以在此处编写有关单击具有所需前缀的单词时要执行的操作的代码。在您的情况下,您可以使用此方法编写导航代码。


这是屏幕截图

【讨论】:

以上是关于在ios中创建以符号'@'开头的单词可点击的主要内容,如果未能解决你的问题,请参考以下文章

在Python中创建可执行的符号链接?

如何编写正则表达式模式以匹配字符串结尾或字符串开头的货币符号

我该怎么做才能有没有符号的数字?

dwrde这个单词谁能帮我翻译一下 我看到一套情侣装 很好看 却查不出英语的意思

如何在 CSS 中创建以特定宽度工作的函数 [关闭]

在 SQL Server 2012 中创建以日期为范围分区的表