Ошибочный Resources$NotFoundException для ImageView с векторным drawable en Android

Приложение ми Acabo de recibir un informe de ANR en Googleplay Console de una app que un usuario se le ha manifestado usando.

android.content.res.Resources$NotFoundException: File res/drawable/ic_circular_way.xml from drawable resource ID #0x7f02006a. If the resource you are trying to use is a vector resource, you may be referencing it in an unsupported way. See AppCompatDelegate.setCompatVectorFromResourcesEnabled() for more info.
...
Caused by: org.xmlpull.v1.XmlPullParserException: Binary XML file line #1: invalid drawable tag vector

Supongo que se refiere que uso drawables en forma de vector.

Танго En el gradle ya definido el uso de

defaultConfig {
   ...
   vectorDrawables.useSupportLibrary = true
   ...
}

Ошибка Ese proviene de Android 4.4 (KitKat)

1
задан 23.01.2017, 07:52
0 ответов

Ища решение я econtrado с этим ответом SO

В gradle определять, если используется 2.0 или начальник

defaultConfig {
    ...
    vectorDrawables.useSupportLibrary = true
    ...
}

С вкладом @Miguel Осорио и дополняя Андроид Суппорт Library (III) – VectorDrawables

Если мы используем предыдущую версию

android {  
    defaultConfig {
        generatedDensities = []  
    }  

    aaptOptions {  
        additionalParameters "--no-version-vectors"  
    }  

}  

В OnCreate активности

AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);

В случае когда использует ресурсы vectoriales в кулисах одного TextView используя свойство android:drawableLeft нужно включать вектор в одном layer-list

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

и чтобы это использовать:

android:drawableLeft="@drawable/ic_hackside_location_on_black"

Полученный от ответа SO

1
ответ дан 03.12.2019, 17:40
  • 1
    это то же самое, что и я прокомментировал тебе –  16.01.2017, 16:16
  • 2
    мне не хватало это appcompatdelegate в каждой активности для того, чтобы acabará функционирования, но сейчас я вижу, что у меня есть проблемы с боковыми drawables drawableLeft... –  16.01.2017, 16:19
  • 3
    @MiguelOsorio уже я обновил ответ –  16.01.2017, 16:30
  • 4
    @Webserveis привет, Если ты это решил? –  16.01.2017, 18:01
  • 5
    хорошие @Elenasys, если, уже solucioné хороший до тех пор, пока меня вновь не вытекут какая-то ошибка в груз ресурса, но в этом проекте если. –  16.01.2017, 18:49

Внутри build.gradle ты должен иметь:

android {

    defaultConfig {
        ...
        vectorDrawables.useSupportLibrary = true

    }

и загрузив эти графики, они должны быть созданы сначала посредством VectorDrawableCompat.create() :

myImageView.setImageDrawable(VectorDrawableCompat.create(myImageView.getResorces(), R.drawable.ic_my_image, null));
1
ответ дан 03.12.2019, 17:40

Теги

Похожие вопросы