당신이 할 수있는 일은 Html.fromHtml()
function입니다.
Spanned
유형 개체가 남습니다. 해당 위치에서 태그를 처리하기 위해 별도의 기간을 사용할 수 있습니까?
태그를 편집하는 예입니다. 상황 : html.fromhtml을 사용하여 작동하는 html 태그가있는 텍스트. 그러나 때때로 URL은 상대적이며 ("http://domain.com/file.html"대신 "/file.html"을 사용하므로) 사용할 수 없습니다. 아래의 함수에 spannable을 보내면 URL에 대한 모든 범위를 찾고 도메인을 추가합니다. 당신은 당신의 특정 태그에 대해 다른 당연히 somehting을 사용할 수
protected Spanned correctLinkPaths (Spanned spantext) {
Object[] spans = spantext.getSpans(0, spantext.length(), Object.class);
for (Object span : spans) {
int start = spantext.getSpanStart(span);
int end = spantext.getSpanEnd(span);
int flags = spantext.getSpanFlags(span);
if (span instanceof URLSpan) {
URLSpan urlSpan = (URLSpan) span;
if (!urlSpan.getURL().startsWith("http")) {
if (urlSpan.getURL().startsWith("/")) {
urlSpan = new URLSpan("http://www.domain.com" + urlSpan.getURL());
} else {
urlSpan = new URLSpan("http://www.domain.com/" + urlSpan.getURL());
}
}
((Spannable) spantext).removeSpan(span);
((Spannable) spantext).setSpan(urlSpan, start, end, flags);
}
}
return spantext;
}
을 나는이 그것을 할 수있는 가장 효율적인 방법입니다 모르겠어요 spannables에 처음 연결 중 하나였다,하지만 최소한 몇 가지 트릭을 보여줍니다 당신은 spannables로 할 수 있습니다 : D
이것은 분명히 내가 바라는 것보다 더 찾고 있습니다. 나는 그것이 필요한 모든 일을하는지보기 위해 그것을 가지고 놀아야 할 것입니다. – penguin359
나는 당신이 할 수있는 것을 보여주기위한 예제를 추가했다. :) – Nanne