Попытка сделать что-то довольно простое.
Берем такой текст
Имя пользователя: Это комментарий, который я делаю
Он находится в одном TextView. Я хочу сделать имя пользователя ссылкой. Я решил, что проще всего будет окружить имя пользователя чем-то вроде «$@», чтобы оно стало
"$@Имя пользователя:$@ Это комментарий, который я делаю
Таким образом, я могу использовать следующее регулярное выражение
Pattern userName = Pattern.compile(".*\\$@(.+)\\$@.*");
с Linkify и сделать ссылку. Однако, очевидно, мне нужно удалить разделители, поэтому следующий код
title.setText(titleText);
Linkify.TransformFilter transformer = new Linkify.TransformFilter() {
@Override
public String transformUrl(Matcher match, String url) {
return match.group(1);
}
};
Linkify.addLinks(title, userName, "content://user=", null, transformer);
Однако по какой-то причине весь текст становится одной гигантской ссылкой, и текст вообще не трансформируется.