0

長話短說;我使用藍牙設備測量該地區其他設備的信號強度,然後在Android應用程序上記錄GPS位置。Android谷歌地圖:改變地圖標記的顏色

我在我的應用程序中將位置放置在Google地圖上,但我希望標記根據信號強度(0-255)的值從紅色變爲綠色等等來更改顏色。

我想我需要讓我自己可繪製在應用程序或改變什麼是在:

Drawable drawable = this.getResources().getDrawable(R.drawable.marker); 

但我不能找到一種方法得出的標記在Android應用程序。

任何想法?

回答

0

我認爲你必須嘗試以下類似的代碼,但它適用於只是默認標誌,顏色將根據色調值發生變化,這是從Google Maps API Demos片段:

// Creates a marker rainbow demonstrating how to create default marker icons of different 
    // hues (colors). 
    int numMarkersInRainbow = 12; 
    for (int i = 0; i < numMarkersInRainbow; i++) { 
     mMap.addMarker(new MarkerOptions() 
       .position(new LatLng(
         -30 + 10 * Math.sin(i * Math.PI/(numMarkersInRainbow - 1)), 
         135 - 10 * Math.cos(i * Math.PI/(numMarkersInRainbow - 1)))) 
       .title("Marker " + i) 
       .icon(BitmapDescriptorFactory.defaultMarker(i * 360/numMarkersInRainbow))); 
    } 
1

你使用的是GoogleMap?如果您有可繪製代下來,所有你需要做的就是通過MarkerOptions.icon方法把它掛:

BitmapDescriptor bitmap = BitmapDescriptorFactory.fromResource(R.drawable.resource); 
MarkerOptions opts = new MarkerOptions().icon(descriptor); 
this.getMap().addMarker(opts); 

這將吸引你的可繪製在地圖上。

You can replacefromResource如果需要的話與fromBitmap