Использование SVG в btimap - PullRequest
0 голосов
/ 26 мая 2019

Это мой фон заставки, и он отлично работает

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

    <item
        android:drawable="@color/background_splash_screen"/>

    <item>
        <bitmap
            android:gravity="center"
            android:src="@drawable/ic_logo" />
    </item>

</layer-list>

Но всякий раз, когда я заменяю

 android:src="@drawable/ic_logo" />

на

 android:src="@drawable/some svg image" />

, я получаю ошибку Какя могу использовать svg в растровом изображении src?
заранее спасибо.

1 Ответ

2 голосов
/ 26 мая 2019

Привет, Android не поддерживает формат SVG напрямую. Вы можете импортировать SVG в векторный формат, поддерживаемый платформой Android. Вы можете использовать плагин Asset Studio для Android Studio:

Вы можете импортировать ресурс из svg, вы можете щелкнуть правой кнопкой мыши по каталогу исходных текстов для рисования и выбрать новый -> Векторный актив, и в этих окнах с помощью tittle: Asset Studio вы можете выбрать тип актива: локальный (SVG; PSD)

Предупреждение : не все стандартные функции SVG поддерживаются на векторном языке Android:

Вы можете проверить раздел: поддержка и ограничения для файлов SVG на этой официальной странице:

https://developer.android.com/studio/write/vector-asset-studio?

А в xml вы можете добавить векторный актив без растрового тега:



<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

    <item
        android:drawable="@color/background_splash_screen"/>

    <item
        android:src="@drawable/ic_vector_logo"/>

</layer-list>

...