[英]How to format/size VectorDrawable for adaptive icon in android
我正在嘗試使用兩個VectorDrawables作為背景和前景來為應用創建自適應圖標。 但是,從Illustrator中制作的svg創建的前景矢量無法調整大小或正確放置在圖標中。
前景矢量,以供將來參考
我根據自適應圖標准則中的規范將矢量viewportheight和viewportwidth的大小調整為108dp x 108dp,但這僅導致前景發生偏移。
<vector android:height="108dp" android:viewportHeight="108"
android:viewportWidth="108" android:width="108dp"
xmlns:aapt="http://schemas.android.com/aapt" xmlns:android="http://schemas.android.com/apk/res/android">
...
</vector>
但是,當視口高度和視口寬度設置為較小的值(例如50)時,矢量會顯示在正確的位置,但太大。
<vector android:height="108dp" android:viewportHeight="50"
android:viewportWidth="50" android:width="108dp"
xmlns:aapt="http://schemas.android.com/aapt" xmlns:android="http://schemas.android.com/apk/res/android">
...
</vector>
我是剛接觸android的人,因此我不確定還有其他因素可能導致此問題。 還有另一個類似的問題,但是抵消作用的原因沒有得到解決。
為了最小化我的應用程序大小,我嘗試對通知和圖標使用相同的向量,並遇到了完全相同的問題。
我嘗試了“向導”:
然后,這使我可以在背景矢量的頂部縮放我的矢量, 但是居中 。
查看為圖標生成的矢量文件,它將我的矢量路徑嵌套在帶有translateX和translateY屬性的組標記中,如下所示:
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="108dp"
android:height="108dp"
android:viewportWidth="52.173912"
android:viewportHeight="52.173912">
<group android:translateX="14.086957"
android:translateY="14.086957">
<path.../>
</group>
</vector>
如果要避免生成文件,然后在生成的png文件中刪除等,請直接在xml中嘗試。
這可能對您有用-就我而言,我不能將新圖標前景矢量用作通知,因為它太小了。 因此,我似乎需要不同尺寸的可縮放矢量圖形的副本!
如果我們可以在自適應圖標文件本身中縮放自適應圖標的前景/背景部分,那將是理想的-也許有人已經知道該怎么做?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.