我想在我的Android應用程序中使用VectorDrawables。
我想從文件系統中加載一個xml文件並獲得一個android.graphics.Drawable
的實例,以便在ImageView
中顯示它。如果我將XML文件添加到資源目錄,它的工作原理。但是當我嘗試從文件系統中加載它時,我總是得到一個NullPointer。是否有可能從文件系統創建VectorDrawable(* .xml文件)
我目前正試圖通過 Drawable.createFromPath(*Path to File*)
或VectorDrawable.createFromPath(*Path to File*)
加載文件,但我不斷得到一個NullPointer。 該文件存在並且是有效的xml文件(請參閱下文)。
亞行日誌我總是得到:
SkImageDecoder::Factory returned null
當我使用mContext.getFilesDir()
路徑看起來像
/data/data/*packagename*/files/*filename*.xml
我也嘗試了一些公共文件夾,如「下載」。當我與File.io API檢查文件它exists()
,canRead()
和canWrite()
更新此北京時間來自Android開發人員網頁
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:height="64dp"
android:width="64dp"
android:viewportHeight="600"
android:viewportWidth="600" >
<group
android:name="rotationGroup"
android:pivotX="300.0"
android:pivotY="300.0"
android:rotation="45.0" >
<path
android:name="v"
android:fillColor="#000000"
android:pathData="M300,70 l 0,-70 70,70 0,0 -70,70z" />
</group>
你可以發佈你的XML文件的代碼? – Kmeixner