0
我有一個簡單的Android應用程序與谷歌地圖顯示當前默認標記。這種做法的好處是,我可以簡單的更改標記,這在我的情況下,依賴於時間的顏色/色調的標誌將「過期」Android谷歌地圖:自定義標記爲漸變顏色
bitmapDescriptor = BitmapDescriptorFactory.defaultMarker(this.calculateMarkerHue(msg));
MarkerOptions markerOptions = new MarkerOptions()
.position(new LatLng(...))
.icon(bitmapDescriptor)
.title("Title")
.snippet("Snippet");
private float calculateMarkerHue(Message msg) {
float hue = <calculate some value 0.0..360.0 depending on msg>
return hue;
}
這工作完全正常。但是,現在我想使用自定義標記來支持不同類型的標記。雖然我設法使用其他PNG可繪製來更改標記形狀,但我沒有成功對顏色進行任何更改。 (不同類型的)drawable,位圖,畫布,位圖描述符的整個概念......我無法得到我的頭。
我試過各種我在網上找到的東西,但沒有任何工作。要麼我得到了鑄造錯誤,空指針異常,或沒有錯誤,但沒有關於設置顏色的效果。
這工作。我只添加了'vectorDrawable.setColorFilter(color,PorterDuff.Mode.SRC_ATOP);'這個函數,其中'color'是一個'int'參數,我計算並賦予該函數。唯一的問題是,它會改變整個Drawable的顏色......就像預期的那樣。默認標記具有很好的特性,即改變顏色不會影響標記的黑色邊框和中心點。 – Christian