[英]How to create vector drawables for android?
我是VectorDrawables
的新手。
我可以看到 android studio 提供的默認vector drawables
對象,如ic_menu_gallery
、 ic_menu_camera
等,效果很好。 因此,我嘗試通過首先將我的png images
轉換為svg
並使用路徑和填充值制作矢量可繪制對象來創建自己的vector drawables
繪制對象,即替換 d 的android:pathData
和 svg 文件中的填充標記的android:fillColor
。 它以某種方式提供了矢量可繪制對象,但外觀扭曲或彎曲。
如果我沒有采取正確的方法,請建議我。
您可以使用 Android Studio。 在線轉換 png 到 svg 文件的工具PNG 到 SVG
對於 SVG 顏色可以使用:
<ImageButton
android:layout_width="48dp"
android:layout_height="48dp"
android:id="@+id/button"
android:src="@drawable/ic_more_vert_24dp"
android:tint="@color/primary" />
或者
imageView.setColorFilter(getResources().getColor(android.R.color.black), PorterDuff.Mode.SRC_IN);
可以將SVG轉換為PNG的在線工具: coolutils
將 SVG 轉換為 Android 可繪制對象: inloop
這是將任何 png/jpg 轉換為矢量可繪制對象的最佳方法:
下載軟件InkScape
在其中打開您的 png,然后按照視頻中顯示的步驟將其轉換為 svg
使用SVG to Vector Drawable 工具將 svg 轉換為矢量可繪制。 另一個工具 svg2android 並不總是有效,因為有時 svg 會不正確地轉換為矢量可繪制對象
將代碼復制到新的可繪制資源文件中。 現在這可以用作常規可繪制對象。
如果您已經有一個 svg,那么直接從第 3 步開始。
我也遇到了這個問題,發現這個非常有用的網站:
https://materialdesignicons.com/
有許多圖標,通過“高級導出”,您可以輕松編輯設置。 對我來說,這是創建矢量可繪制的最快和最簡單的方法,如果您不想下載文件,您可以查看代碼並復制它,不僅作為矢量繪制,甚至作為 SVG 或 XAML。 哦,它是免費的:)
步驟 1第一步是將其轉換為 SVG 格式 - 對於黑白 SVG 轉換器,有很多工具,但用於彩色轉換的好工具卻很少。 https://www.autotracer.org/是最好的之一,它對我有用。 轉換並下載 SVG 文件。 第 2 步- 在 'Android Studio' 中轉到 drawables 文件夾並右鍵單擊以選擇 New - Vector Asset
第 3 步- 從第 1 步中選擇下載的 SVG 文件。android Studio
第 4 步- 不要忘記設置 navigationView.setItemIconTintList(null); 如果在導航抽屜/視圖中使用彩色圖標,則為 null。
干杯!!
在 Android Studio 3.1 中:
文件->新建->矢量資源
資產類型:選擇本地文件
單擊路徑以選擇 .svg 或 .psd 文件
如果您沒有圖片,請轉到 Google 圖片,高級圖片搜索。 使用文件類型:SVG文件
您可以使用 photoshop/illustrator 創建自己的 svg 圖像或圖標,並且可以導入矢量資產(在 android studio 2.+ 中可用)。 有時導入它會導致圖像失真,如果 svg 很復雜或有很多元素,那么您可以通過重疊 ImageView 將它用作單個元素作為矢量資產。
Android Studio 創建矢量可繪制對象
您可以使用 Asset Studio 來完成
File -> New -> Vector Asset -> Configure
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.