1

我正在切換到矢量繪圖,即使在較舊的Android版本上它們也工作得很好。我的應用目標爲4+。我將其中一個通知切換到了矢量圖像,並且我必須以編程方式使用VectorDrawableCompat。突然之間,我收到該通知的例外,因爲它找不到資源。

這是例外:

Fatal Exception: android.content.res.Resources$NotFoundException: File res/drawable-hdpi-v4/vector_name.png from xml type xml resource ID #0x7f0201d5 
     at android.content.res.Resources.loadXmlResourceParser(Resources.java:3733) 
     at android.content.res.Resources.loadXmlResourceParser(Resources.java:3680) 
     at android.content.res.Resources.getXml(Resources.java:2215) 
     at android.support.graphics.drawable.VectorDrawableCompat.create(VectorDrawableCompat.java:408) 

這是我運行代碼:

VectorDrawableCompat vector = VectorDrawableCompat.create(getResources(), R.drawable.vector_name, null); 

我gradle這個文件有此行vectorDrawables.useSupportLibrary = true就像我說的,所有其他的矢量工作正常但我主要使用AppCompatImageView來使用它們。

編輯:我應該提到我在庫模塊內部這樣做。

+0

這可能是開發者忘記添加到支持庫中的東西。您可以向Google開發者提出問題。 –

回答

0

您需要添加此行defaultConfig塊內部在build.gradle文件:

vectorDrawables.useSupportLibrary = true 

這將產生PNG圖像在運行時API比21低,因爲他們是不是你不會得到一個錯誤找到。

+1

我已經在使用它了。 – casolorz

0

線從您的logcat說:

致命異常:android.content.res.Resources $ NotFoundException: 文件RES /提拉 - HDPI-V4 /從XML類型的XML資源vector_name.png ID #0x7f0201d5

它建議您在drawable文件夾中使用vector_name.png而不是xml文件。

相關問題