2013-08-28 21 views
13

İşaretçi simgesini değiştirmeye çalışıyorum. Görüntüyü bir sunucu dizininden alıyorum.Android Google Maps API v2 - işaretleyici simgesi nasıl değiştirilir

"Bit" sonucunu her seferinde kırılma noktası koyduğumda null. Ve uygulamayı çalıştırdığımda java.lang.NullPointerException olsun.

File file = new File("J:\\!!! DOCUMENTS\\!Outsourcing\\AppStore\\Benzinostancii\\Petrol\\logo.png"); 

Bitmap bit = BitmapFactory.decodeFile(String.valueOf(file)); 

double Dlat = lat.get(index); 
double Dlon = lon.get(index); 
String info = Arrayinfo.get(index); 
String name = Arrayname.get(index); 

LatLng coordinate = new LatLng(Dlat, Dlon); 
map.addMarker(new MarkerOptions() 
    .icon(BitmapDescriptorFactory.fromBitmap(bit)) 
    .position(coordinate) 
    .title(info) 
).setSnippet(name); 
+0

J dizin android cihazın dahili hafızasında bu? Neden bunları katlanabilir değil? –

+0

Bu J dizini bilgisayar sunucusundan ve bu sunucudan görüntü yüklemek istiyorum. –

+0

Oh Sanırım bu şekilde mümkün değil. Görüntüyü önce sunucudan indirip kullanmak isteyebilirsiniz. –

cevap

49
// latitude and longitude 
double latitude = 17.385044; 
double longitude = 78.486671; 

// create marker 
MarkerOptions marker = new MarkerOptions().position(new LatLng(latitude, longitude)).title("Hello Maps"); 

// Changing marker icon 
marker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.my_marker_icon))); 

// adding marker 
googleMap.addMarker(marker); 

More Info

+0

Sanırım a) 9. şeridinize eklediniz –

+0

'setIcon() 'anlamına gelebilir. – crm

+1

emin setIcon yeni google apis üzerinde çalışıyor mu? Ben –

4

Çok basit: Xamarin C# kullanıcıları için

new MarkerOptions().icon(BitmapDescriptorFactory.fromResource(R.drawable.icon)) 
0

:

tappedMarker.Remove(); 
MarkerOptions markerOptions = new MarkerOptions(); 
markerOptions.SetTitle(tappedMarker.Title); 
markerOptions.SetPosition(tappedMarker.Position); 

markerOptions.SetIcon(BitmapDescriptorFactory.DefaultMarker(BitmapDescriptorFactory.HueGreen)); 
tappedMarker = googleMap.AddMarker(markerOptions); 
+0

düşünmüyorum, yöntem adı asla bir büyük harfle başlamaz. Ve bu yöntemler mevcut değil. – Dennis

+1

@Dennis iyi, C# üzerinde yapar, ama bu sadece Xamarin sürüm, aynı kodu java, aynı nomenklatür –

+0

Tamam, ancak bu yöntemler mevcut değil. – Dennis

İlgili konular