Обычным инструментом для преобразования XML в HTML является XSLT.Ищите SO по руководству по XSLT, и вы получите хорошие результаты.
Вот еще один вопрос , показывающий, как один разработчик использовал XSLT на Android.Вы также можете найти примеры использования Transformer в Java, как в этой полезной статье :
// JAXP reads data using the Source interface
Source xmlSource = new StreamSource(xmlFile);
Source xsltSource = new StreamSource(xsltFile);
// the factory pattern supports different XSLT processors
TransformerFactory transFact =
TransformerFactory.newInstance();
Transformer trans = transFact.newTransformer(xsltSource);
trans.transform(xmlSource, new StreamResult(System.out));
Обновление: Дляболее ранние версии Java API для Android:
В этой статье показано, как использовать SAX-анализатор для анализа входного XML, а затем использовать XmlSerializer для вывода XML,Последний может легко вывести любой XHTML, который вы хотите.Оба доступны начиная с уровня API 1.
К сожалению, я не вижу способа сделать XPath на уровне API 3, но если ваш входной XML не слишком сложен, вы сможете написать свои собственные преобразования.Я знаю, что вы «не хотите анализировать его и генерировать представление после», но если вы имеете в виду, что не хотите даже использовать анализатор XML, предоставляемый Android, то я не знаю никакой альтернативы.
Обновление 2: Я только что узнал о XOM, который поддерживает подмножество XPath . В этом вопросе показано, как кто-то использует XOM на Android (для написания XML) с уровнем API 4. Вы можете воспользоваться функциями XPath, а также функциями сериализации.Требуется небольшая внешняя библиотека, баночка XOM.Я не знаю, совместимо ли это с API уровня 3.