"Как отображать содержимое div html в android на текстовом изображении
У меня есть значение для строки:
String htmlValue = "<div style="text-align: center;"><span style="font-family: impact, chicago; font-size: 18px;">Exchange Offer !! </span></div>
<div style="text-align: center;"><span style="font-size: 14px;">any mobile phone</span> , <span style="font-size: 14px;">give your</span> <span style="font-family: impact, chicago; font-size: 20px;">take new one</span>.</div>";
и как отобразить такой тип div, включенный в текстовое представление.
Я попробовал это, но не удалось отобразить только стиль отображения div.
Spanned result= Html.fromHtml(htmlValue);
tvFooter.setText(result);
или
tvFooter.setText(Html.fromHtml(htmlValue));
Здесь определено: http://commonsware.com/blog/Android/2010/05/26/html-tags-supported-by-textview.html, поддержка div, но может получить точный ожидаемый результат, делая выше.
У меня есть оба трюка, но не работает.
Выход ошибки:
![enter image description here]()
Ожидаемый результат, подобный этому
: ![enter image description here]()
Ответы
Ответ 1
Когда я просмотрел исходный код /frameworks/base/core/java/android/text/Html.java, атрибут style
и тег span
не поддерживаются. Предложите использовать webview вместо textview
В Lollipop поддерживаются следующие теги или атрибуты,
- <br>
- <p>
- <div>
- <strong>
- <b>
- <em>
- <cite>
- <dfn>
- <i>
- <big>
- <small>
- <font color="..." face="...">
- <blockquote>
- <tt>
- <monospace>
- <a href="...">
- <u>
- <sup>
- <sub>
- <h1>
- <h2>
- <h3>
- <h4>
- <h5>
- <h6>
- <img src="...">
Ответ 2
Вам нужно написать \before inside ", потому что они закрывают вашу строку, прежде чем они закончатся, как говорит Джемшит Искендеров.
Кроме того, стиль тегов и диапазон не могут отображаться в текстовом виде. Проверьте эту ссылку для списка тегов HTML, которые работают в текстовом режиме.
Ответ 3
Все html-теги не поддерживаются Html.fromHtml() здесь проверьте поддерживаемые теги в textview.So лучше использовать webview вместо textview для загрузки содержимого html. как
yourwebview.loadData(yourhtmlData, "text/html", "UTF-8");