Способ визуализации простых HTML-фрагментов

Способ визуализации простых HTML-фрагментов

09.04.2011 04:16:03 Просмотров 39 Источник

Я пишу приложение для Android для доступа к StackExchange, и я ищу лучший способ обработки рендеринга простых фрагментов HTML, используемых в API StackExchange. Единственный HTML в API находится в телах вопросов, ответов и комментариев. Комментарии, конечно, используют более ограниченное подмножество HTML. Большая часть HTML-это просто простое форматирование, такое как <p>, <b>, <pre>и т. д. но есть также<a>и случайный <img>, с которым нужно иметь дело. Я рассматривал возможность просто использовать TextView и заменить HTML на стиль, но это может быть слишком ограничительным. Я взглянул на WebView, но это почти кажется излишним. Веб-просмотры, похоже, предназначены для загрузки внешнего динамического контента и запуска нескольких потоков. Я планирую только рендеринг простого, фиксированного HTML, предоставляемого в API, который не включает в себя CSS или JavaScript.

Кроме того, у меня проблема с кодировкой с WebViews, где символы, такие как фигурные кавычки, отображаются как несколько символов, где они отображаются нормально при использовании в TextView.

У вопроса есть решение - Посмотреть?

Ответы - Способ визуализации простых HTML-фрагментов / Method for rendering simple HTML fragments

Является ответом!
Nanne

09.04.2011 04:28:32

Что вы можете сделать, это использовать Html.fromHtml().

Это оставит вас с Spanned

Я не уверен, что это самый эффективный способ сделать это, это было одним из моих первых подключений к spannables, но, по крайней мере, он показывает некоторые трюки, которые вы можете сделать с spannables :D

https://stackoverflow.com/questions/5604973/method-for-rendering-simple-html-fragments/5605026#comment6382486_5605026
Это определенно больше похоже на то, на что я надеялся. Мне придется немного поиграть с ним, чтобы увидеть, делает ли он все, что мне нужно.
https://stackoverflow.com/questions/5604973/method-for-rendering-simple-html-fragments/5605026#comment6382530_5605026
Я добавил пример, чтобы показать некоторые из того, что вы можете сделать :)
Закрыть X