В настоящее время я добавляю автозаполнение мест Google в свой проект. В документе говорится, что мы должны использовать новейший API Google Мест и использовать другую библиотеку. Я уже следовал учебнику документа должным образом. Я использую режим наложения автозаполнения на AppCompatActivity. Это определенно работает, но есть ошибки, которые я нашел. Во-первых, когда я набираю название места полностью, можно сказать «Бали», он показывает пустой список, но когда я набираю «Ба», он показывает список мест, который содержит имя «Ба». во-вторых, после того, как я щелкну предложенный список, фрагмент не закроется и продолжит поиск по тому же названию мест.
Я пытался использовать другой способ. Я пытался использовать намерение и прочее. он тоже работает, но показывает те же ошибки.
Вот код, над которым я работал:
if (! Places.isInitialized ()) {
Places.initialize (applicationContext, resources.getString (R.string.google_maps_key))
}
placesClient = Places.createClient(this)
autocompleteSupportFragment = supportFragmentManager.findFragmentById(R.id.autocomplete_fragment) as AutocompleteSupportFragment?
autocompleteSupportFragment?.setPlaceFields(Arrays.asList(Place.Field.ID, Place.Field.NAME))
autocompleteSupportFragment?.setLocationBias(RectangularBounds.newInstance(LAT_LNG_BOUNDS))
autocompleteSupportFragment?.setOnPlaceSelectedListener(object : PlaceSelectionListener {
override fun onPlaceSelected(place: Place) {
mGoogleMap!!.addMarker(MarkerOptions().position(place.latLng!!).title(place.name.toString()))
mGoogleMap?.animateCamera(CameraUpdateFactory.newLatLngZoom(place.latLng, 14f))
}
override fun onError(status: Status) {
}
})
Я ожидал, что когда я нажму на результат, фрагмент закроется, и он установит текст фрагмента. Но фрагмент не закрывается и всегда продолжает искать в одном и том же месте. Любая рекомендация для меня, как правильно использовать этот API? потому что кажется, что это ошибки этого API