我有一个表格视图,其中每一行包含各种信息,如姓名,图片,消息等。
此消息可能包含以'@'或'#'开头的单词。我想让这些单词可点击,点击后我想打开另一个视图控制器而不是浏览器。
我知道我们可以在textview上设置UIDataDetector
类型的链接,但这只适用于链接。
有没有什么方法可以告诉textview检测匹配某些正则表达式的文本,然后使该文本可以点击?
编辑: 最后我能够做到这一点,对于那些仍在处理这个问题的人,我写了一篇博文: http://www.uditagarwal.com/2013/10/make-different-words-in-uitextview.html
答案 0 :(得分:3)
答案: GLTapLabel
在名为-drawTextInRect
的类中有一个名为GLTapLabel
的方法,其中包含一行代码:
BOOL hot = [word hasPrefix:@"#"] || [word hasPrefix:@"@"];
您只需在此处更改前缀值,即可获得所需的结果。
有一个名为-labledidSelectedHotWord
的委托方法。您可以在此处写下有关单击所需前缀的单词时要执行的操作的代码。在您的情况下,您可以使用此方法编写导航代码。
以下是屏幕截图: