URL-адрес вида android в XML-макете

88
7

У меня есть макет, который я установил с макетом xroid. Я хотел бы вставить ссылку в текстовое представление, чтобы, щелкнув по ссылке, она открывается в браузере Android. как это делается. Кажется, что нет никакого URL-адреса или чего-либо еще.

спросил(а) 2021-01-25T18:19:52+03:00 4 месяца, 4 недели назад
1
Решение
99

Вы должны просто указать URL-адрес в TextView, а затем Linkify. Существует также Учебник о Linkify и настраиваемых ссылках, которые могут помочь.

ответил(а) 2021-01-25T18:19:52+03:00 4 месяца, 4 недели назад
77

Вот как это сделать неочевидным, но обычно желаемым способом. Скажем, мы хотим связать только слово blammo внутри текстового поля. Когда пользователь нажимает на blammo, открывается браузер и отправляет его на google.com.


Попробуйте что-то вроде этого:

class sampleTransformFilter implements TransformFilter {
public String transformUrl(Matcher match, String url) {
return "http://google.com";
}
}

class sampleMatchFilter implements MatchFilter {
public boolean acceptMatch(CharSequence s, int start, int end) {
return true;
}
}

Pattern sampleMatcher = Pattern.compile("blammo");
String sampleURL = "";
Linkify.addLinks(textView, sampleMatcher, sampleURL, new sampleMatchFilter(), new sampleTransformFilter());

ответил(а) 2021-01-25T18:19:52+03:00 4 месяца, 4 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема