AndroidStudio 3.0 / Plugin Android Gradle 3.0
<vector>
<path android:fillColor="@color/image_button_disabled"/>
</vector>
Eu recebo este erro:
referências a outros recursos não são suportadas pela geração PNG em tempo de construção
Será possível resolvê-lo ou é uma solução obsoleta?
android
resources
android-studio-3.0
Langme
fonte
fonte
Respostas:
Para oferecer suporte ao API SDK <24, adicione a seguinte linha ao seu aplicativo
build.gradle
:Se o seu minSdkVersion for 24 ou superior, o problema será resolvido por si só, porque o VectorDrawables tem suporte total a partir desta API.
Consulte Desenvolvedores Android: Solução de compatibilidade com versões anteriores de gavetas vetoriais para obter detalhes.
fonte
você precisa usar o código hexadecimal diretamente, não se referindo a um recurso.
fonte
vectorDrawables.useSupportLibrary = true
à suabuild.gradle
.Um pouco mais de contexto para este erro:
Para a biblioteca de suporte, inclua uma instrução no seu arquivo build.gradle:
fonte
fillType
énonZero
mas difere apenasevenOdd
em certos casos: w3.org/TR/SVG/painting.html#FillRulePropertyNão use o atributo colorReference no fillColor no Drawable Vector, apenas use o código hexa
use assim
em vez disso
fonte
Se sua minSdkVersion for 21, você poderá desativar a geração de PNG adicionando esta linha:
A remoção desta linha ainda gerará os PNGs.
Fonte: http://google.github.io/android-gradle-dsl/current/com.android.build.gradle.internal.dsl.VectorDrawablesOptions.html
fonte
Consegui contornar isso fazendo o seguinte:
Dessa forma, o compilador funcionará
fonte
Eu acho que você está usando
android:fillColor="@color/image_button_disabled"
esse código para desenho vetorial.Não é suportado.
Apenas substitua-o por
android:fillColor="#c4ca5e"
fonte
Para adicionar a resposta @ mwa91 .
Caso você precise de um tema dinâmico do drawable, mas não tenha tempo para atualizar seus layouts, vá com a resposta @ mwa91 e altere todos os atributos para , você sempre pode usar o valor da cor hexadecimal no drawable e depois tingir o drawable no ImageView:
android:src="@drawable/..."
app:srcCompat="@drawable/..."
fonte