в моем случае я использовал PlaceAutocompleteFragment
, вы можете добавить это в ваш XML файл
<androidx.cardview.widget.CardView
android:id="@+id/cardView"
android:layout_width="match_parent"
android:layout_height="55dp"
android:layout_marginLeft="16dp"
android:layout_marginTop="32dp"
android:layout_marginRight="16dp"
app:cardCornerRadius="4dp"
app:cardElevation="10dp"
app:elevation="15dp"
>
<fragment
android:id="@+id/place_autocomplete_fragment"
android:name="com.google.android.gms.location.places.ui.PlaceAutocompleteFragment"
android:layout_width="match_parent"
android:layout_gravity="center"
android:layout_height="35dp" />
</androidx.cardview.widget.CardView>
, а затем добавить это в свою деятельность
PlaceAutocompleteFragment autocompleteFragment = (PlaceAutocompleteFragment)
getFragmentManager().findFragmentById(R.id.place_autocomplete_fragment);
autocompleteFragment.setOnPlaceSelectedListener(new PlaceSelectionListener() {
@Override
public void onPlaceSelected(Place place) {
mMap.clear();
mMap.addMarker(new MarkerOptions().position(place.getLatLng()).title(place.getName().toString()));
mMap.moveCamera(CameraUpdateFactory.newLatLng(place.getLatLng()));
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(place.getLatLng(), 12.0f));
markerOptions.icon(bitmapDescriptorFromVector(MapsActivity.this, R.drawable.ic_map));
mMap.addMarker(markerOptions);
LatLng latLng = place.getLatLng();
ticket_lat = latLng.latitude;
ticket_long = latLng.longitude;
}
@Override
public void onError(Status status) {
}
});
}
Я надеюсь, что это поможет ты.