Create words starting with sign '@' Clickable in ios

こ雲淡風輕ζ 提交于 2019-12-21 21:29:59

问题


I have a table view in which each row contains various information like name, picture, message etc.

This message may contain some words starting with '@' or '#'. I want to make these words clickable and on click i want to open another view controller instead of browser.

I know we can set UIDataDetector type on textview for links but that only works for links.

Is there any way so that I can tell textview to detect text matching some regular expression and then make that text clickable ?

EDIT: Finally I am able to achieve this, for those who are still dealing with this issue, I have written a blog post: http://www.uditagarwal.com/2013/10/make-different-words-in-uitextview.html


回答1:


Answer : GLTapLabel

There is a method named -drawTextInRect in class named GLTapLabel which contains one line of code :

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

You just have to change the prefix values here and you will have your desired result.


There is one delegate method named -labledidSelectedHotWord. You can write here the code about the action you want to perform when the word with desired prefix is clicked. In your case, you can write your navigation code in this method.


Here is the Screenshot :



来源:https://stackoverflow.com/questions/19397619/create-words-starting-with-sign-clickable-in-ios

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!