2017-06-06 29 views
3

我們正在嘗試將所有應用程序圖標資源移至VectorDrawables,以減少應用程序的大小並輕鬆管理應用程序圖標工具包。在位圖XML中使用VectorDrawables並對其進行着色

我們已經有一個圖標工具包,包含我們應用程序的所有圖標,全部爲黑色,想法是在每種用法中使用它們並着色爲適當的顏色。這可以(或多或少)完美地工作,直到你試圖在layer-list/selector /類似的地方做出同樣的事情,你需要包含一個<bitmap>或類似的項目,並且......我找不到如何着色VectorDrawable也適用於< 21設備

先決條件是不需要以編程方式,我知道這是可能的,但它使程序打破了所有圖標的簡單使用,也沒有意義。

在恢復,是否有任何形式使用VectorDrawable<Bitmap> XML和色調它在< 21設備工作,而不是編程?

+0

我添加了這個功能請求到Android的問題跟蹤,隨時啓動它 https://issuetracker.google.com/issues/62369594 – Aracem

回答

6

簡短的回答:不,你不能那樣做。

擴展版本:

複製SVG和應用顏色:

icon_a.xml 
icon_b.xml (with color changed) 
+0

不錯的@alorma,遺憾的是這是目前唯一的解決方案。但是,對於每個密度,具有與PNG相同的SVG資源的多個版本要好得多。希望Android團隊可以讓我們在任何地方都可以使用SVG。 – MiguelCatalan

+0

我將此功能請求添加到Android問題跟蹤器,隨時啓動它issuetracker.google.com/issues/62369594 – Aracem

相關問題