Вы пытались добавить, создав новый файл ресурсов для рисования?
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- view background color -->
<solid
android:color="#a9c5ac" >
</solid>
<!-- view border color and width -->
<stroke
android:width="3dp"
android:color="#1c1b20" >
</stroke>
<!-- If you want to add some padding -->
<padding
android:left="4dp"
android:top="4dp"
android:right="4dp"
android:bottom="4dp" >
</padding>
<!-- Here is the corner radius -->
<corners
android:radius="10dp" >
</corners>
</shape>
Добавьте это в нужный файл макета
Хотя я не знаю какого-либо конкретного инструмента для этого, вот базовый подход, который я бы выбрал:
Загрузить как XML-документ
Извлечение классов и стилей CSS из документа
Для каждой пары класса и стиля CSS
Построить запрос xpath из класса css
Для каждого соответствующего узла
Установите атрибут стиля для этого класса
Удалить узел стиля из документа
Преобразовать документ в строку
Зависит от того, насколько сложным будет ваш CSS. Если это просто вопрос элементов ("p {}", "a {}"), идентификаторов / классов (#test {}), то, вероятно, проще всего использовать регулярные выражения. Вам понадобится один, чтобы найти все определения стилей, а затем проанализировать их, а затем использовать больше регулярных выражений для поиска совпадений тегов.
Например, если вы обнаружили, что у вас есть стиль для тегов A, Вы можете использовать регулярное выражение, например:
<a\b[^>]*>(.*?)</a>
Чтобы получить их, вам нужно будет заменить, чтобы добавить стиль. Конечно, вы бы хотели, чтобы регулярное выражение принимало тег в качестве параметра (в данном случае тег A).
Если вы попали в дочерний выбор или что-то большее, чем просто корневые элементы и ID / классы, это может быстро запутаться.
Подумайте только об определении стиля inline?