Lista de camadas do Android: problema de bitmap com app: srcCompat

11

Depois de atualizar para o Studio 2.3, quando tentei criar uma lista de camadas com um vetor que pode ser desenhado, ele pede para usar app:srcCompat em vez de android:src em bitmap .

alguém pode me ajudar a adicionar vector drawable to layer list ?

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">

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

<item>
    <bitmap
        android:gravity="center"
        app:srcCompat="@drawable/login">
    </bitmap>

</item>

</layer-list>

Já adicionou

vectorDrawables.useSupportLibrary = true
    
por Boban 09.03.2017 в 10:26
fonte

3 respostas

6

Eu encontrei uma solução para o seu problema

Modifique o segundo item para isso:

<item android:gravity="center" android:drawable="@drawable/login"/>

UPDATE

isso causará falha na API < 21. Não há melhor maneira.

    
por Doctor Henry 08.04.2017 / 08:53
fonte
1

Em vez de fazer:

<item>
    <bitmap
        android:gravity="center"
        app:srcCompat="@drawable/login">
    </bitmap>
</item>

Você precisa declarar o plano de fundo da seguinte forma:

<item
    android:gravity="center"
    app:srcCompat="@drawable/login"/>

Além disso, certifique-se de que o elemento app schema seja apresentado:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:app="http://schemas.android.com/apk/res-auto">
    ....
</layer-list>
    
por JoseF 11.12.2017 / 14:47
fonte
0

Eu consegui fazer da seguinte maneira:

<item
    android:gravity="center"
    android:drawable="@drawable/login" />
    
por SapuSeven 26.09.2018 / 22:38
fonte