Как сделать так, чтобы текстовый URL содержал подчеркивание
У меня есть TextView, и у него есть URL. И я использую AutoLine="web" в макете XML.
Большинство из них работают нормально, но среди некоторых есть проблема.
Например, если есть два разных URL ниже,
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:autoLink="web"
android:text="http://sykwon.blog.me/" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:autoLink="web"
android:text="http://sy_kwon.blog.me/" />
Тогда URL, который не имеет "подчеркивания", работает нормально, но URL, который имеет "подчеркивание", не работает хорошо.
Нормальная работа, как будто должно быть 'подчеркивание' под URL, но это не так.
Поскольку подчеркивание, ссылка работает.
Я хочу, чтобы они сработали. Тогда каково решение?
Кто-нибудь поможет мне, плз.
Береги себя.
1 ответ
Решение
Подчеркивание не считается допустимой частью любого URL, и вы можете удалить его:
Способ удалить подчеркивания из гиперссылок -
Spannable s = (Spannable) Html.fromHtml(content);
for (URLSpan u: s.getSpans(0, s.length(), URLSpan.class)) {
s.setSpan(new UnderlineSpan() {
public void updateDrawState(TextPaint tp) {
tp.setUnderlineText(false);
}
}, s.getSpanStart(u), s.getSpanEnd(u), 0);
}
tv.setText(s);
Обратитесь - как создать текстовое представление-ссылка-без подчеркивания в андроиде.