Я внедряю Автозаполнение мест Google в моем проекте Xamarin Android. (Это не проект Xamarin Forms). Когда я ищу в первый раз, автозаполнение работает правильно, но последующие поиски не работают должным образом.
Даже если автозаполнение работает, если я выбираю элемент , он не вызовет функцию OnActivityResult
и снова вернет экран выше.
Даже эти сообщения не решили мою проблему
Я не установил платежный аккаунт, но не думаю, что это проблема, потому что это работает иногда. Как я могу решить эту проблему?
(Обратите внимание, что это не повторяющийся вопрос, поскольку я не смог найти ни одного подобного вопроса)
Этот код я использую для открытия автозаполнения Google Адресов. view
private void BtnLocationOnClick(object sender, EventArgs e)
{
List<Place.Field> fields = new List<Place.Field>();
fields.Add(Place.Field.Id);
fields.Add(Place.Field.Name);
fields.Add(Place.Field.LatLng);
fields.Add(Place.Field.Address);
Intent intent = new Autocomplete.IntentBuilder(AutocompleteActivityMode.Overlay, fields)
.SetCountry("US")
.Build(this);
StartActivityForResult(intent, 1);
}
После выбора элемента OnActivityResult
необходимо вызвать функцию
protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
base.OnActivityResult(requestCode, resultCode, data);
if (requestCode == 1)
{
if (resultCode == Android.App.Result.Ok)
{
Place place = Autocomplete.GetPlaceFromIntent(data);
txtLocation.Text = place.Name;
googleMap.AnimateCamera(CameraUpdateFactory.NewLatLngZoom(place.LatLng, 15));
}
}
}