0

我想要在Google地圖中以編程方式將我的MarkerOptions繪製爲可繪製。我得到像String這樣的圖標,之後我嘗試使用它來放置MarkerOptions的圖標。MarkerOptions圖標以編程方式

我使用這個代碼:

String icono = mis_localizaciones.get(i).getIcon(); 
int id = getResources().getIdentifier(icono, "drawable", getPackageName()); 
Drawable drawable = getResources().getDrawable(id); 
mi_marker.icon(BitmapDescriptorFactory.fromResource(drawable)); 

但我不能做這樣的,因爲在一個問題:mis_markers.icon(BitmapDescriptorFactory.fromResource(drawable));

有人可以幫助我嗎?非常感謝

+0

這是什麼問題? – 2015-01-21 11:18:44

+0

我在我的問題中寫了一個問題,我不能像這樣使用drawable。 – Elena 2015-01-21 11:22:12

+0

您需要在BitmapDescriptorFactory.fromResource(可繪製)處傳遞'Bitmap' – 2015-01-21 11:23:09

回答

0

按照下面的文檔: -

https://developers.google.com/maps/documentation/android/marker

看到下面的代碼到你的地圖上添加標記。

Marker melbourne = mMap.addMarker(new MarkerOptions() 
          .position(MELBOURNE) 
          .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_AZURE))); 

看到這個

How to display multiple markers with different icons in Google Maps Android API v2?

+0

是的,但我試圖通過編程方式將自定義圖像放在標記上 – Elena 2015-01-21 11:21:26

+0

自定義圖像是什麼意思? – duggu 2015-01-21 11:22:11

+0

你的代碼是谷歌地圖的默認標記,我想用我的圖片來放置標記 – Elena 2015-01-21 11:23:12

0
//make Sure icono String doesnt contain extension of file 
// eg: flower.png is not a valid input for icono 
// eg flower is valid input 
String icono = mis_localizaciones.get(i).getIcon(); 


int id = getResources().getIdentifier(icono, "drawable",getPackageName()); 
// In id variable you aleady got drawable image refrence 
mi_marker.icon(BitmapDescriptorFactory.fromResource(id)); 
+0

是的,但是如果我想讓你的圖標變成變量? – Elena 2015-01-21 11:28:46

+0

你想加載圖片從SD卡...... ?? – koutuk 2015-01-21 11:30:18

+0

我收到你的問題一分鐘 – koutuk 2015-01-21 11:33:03

0

你混合起來BitmapDescriptorFactory.fromResource()BitmapDescriptorFactory.fromBitmap()。這是fromResource()的正確用法。它以資源ID爲參數:

String icono = mis_localizaciones.get(i).getIcon(); 
int id = getResources().getIdentifier(icono, "drawable", getPackageName());   
mi_marker.icon(BitmapDescriptorFactory.fromResource(id));