Ich versuche, indem die Breite und die Länge von einem bestimmten Ort eine Markierung in Google Maps zu setzen, nachdem dies durch den Einsatz Orte zu finden:Wie setze ich einen Marker in Google Maps nach einem Klick?
public void findPlace() {
AutocompleteFilter typeFilter = new AutocompleteFilter.Builder()
.setTypeFilter(AutocompleteFilter.TYPE_FILTER_ADDRESS)
.build();
try {
Intent intent =
new PlaceAutocomplete.IntentBuilder(PlaceAutocomplete.MODE_FULLSCREEN)
.setFilter(typeFilter)
.build(getActivity());
getActivity().startActivityForResult(intent, PLACE_AUTOCOMPLETE_REQUEST_CODE);
//to add marker for destination location
} catch (GooglePlayServicesRepairableException e) {
// TODO: Handle the error.
} catch (GooglePlayServicesNotAvailableException e) {
// TODO: Handle the error.
}
}
Daraus ich den Platz zu bekommen, und ich bin mit dem folgend zu erhalten lat und lange der Orts gesucht:
Place place = PlaceAutocomplete.getPlace(MainActivity.this, data);
Log.e("lat and long", place.getLatLng().latitude + place.getLatLng().longitude)
danach i Marker zu diesem lat zu setzen versuchen und lange mit dieser Methode i erstellt:
protected Marker createMarker(double latitude, double longitude) {
Logger.e("inside" ,"create marker");
return mMap.addMarker(new MarkerOptions()
.position(new LatLng(latitude, longitude))
.anchor(0.5f, 0.5f)
.title("Destination")
.snippet("Snippet Destination").icon(BitmapDescriptorFactory.fromResource(R.drawable.black)));
}
und diese Methode scheint nur innerhalb der Onverride-Methode onMapReady zu funktionieren.
Wie kann ich es nach dem Klicken verwenden?