2013-08-28 14 views
13

कैसे बदलें मैं मार्कर आइकन बदलने की कोशिश कर रहा हूं। मुझे एक सर्वर निर्देशिका से छवि मिलती है।एंड्रॉइड Google मैप्स एपीआई v2 - मार्कर आइकन

जब मैं "बिट" परिणाम null हर बार ब्रेक पॉइंट डालता हूं। और जब मैं ऐप चलाता हूं तो मुझे java.lang.NullPointerException मिलता है।

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

जम्मू निर्देशिका Android डिवाइस की आंतरिक मेमोरी में है? इसे ड्रॉबल्स में क्यों नहीं डालना? –

+0

यह जे निर्देशिका पीसी सर्वर से है और मैं इस सर्वर से छवि लोड करना चाहता हूं। –

+0

ओह मुझे लगता है कि इस तरह से संभव नहीं है। आप पहले सर्वर से छवि को डाउनलोड करना चाहते हैं, फिर इसका इस्तेमाल करें। –

उत्तर

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

मुझे लगता है कि आपने जोड़ा है) आपके 9वें लेन –

+0

में शायद 'setIcon() 'का अर्थ हो सकता है। – crm

+1

क्या आप निश्चित रूप से सेट करें Icon नए google apis पर काम करता है? मुझे ऐसा नहीं लगता कि –

4

यह बहुत सरल है:

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

Xamarin सी # उपयोगकर्ताओं के लिए:

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

विधि का नाम कभी भी ऊपरी मामले से शुरू नहीं होता है। और ये विधियां मौजूद नहीं हैं। – Dennis

+1

@ डेनिस अच्छी तरह से, यह सी # पर करता है, लेकिन यह एक्समरिन संस्करण है, बस उसी कोड को जावा में परिवर्तित करें, वही नामकरण –

+0

ठीक है, लेकिन ये विधियां मौजूद नहीं हैं। – Dennis

संबंधित मुद्दे