未设置 PlaceSelectionListener。不会传递任何结果

No PlaceSelectionListener is set. No result will be delivered

当我点击 autocompletefragment 时。日志显示:

Places: No PlaceSelectionListener is set. No result will be delivered.

val realView = inflater.inflate(R.layout.fragment_connect, container, false)

Places.initialize(activity!!.applicationContext, getString(R.string.google_maps_key))
val placesClient = Places.createClient(activity!!)

val autocompleteFragment1 = fragmentManager?.findFragmentById(R.id.autocomplete_fragment1) as? AutocompleteSupportFragment // Make casting of 'as' to nullable cast 'as?'

autocompleteFragment1?.setCountry("PH")
// Specify the types of place data to return.
autocompleteFragment1?.setPlaceFields(listOf(Place.Field.ID, Place.Field.NAME))

// Set up a PlaceSelectionListener to handle the response.
autocompleteFragment1?.setOnPlaceSelectedListener(object : PlaceSelectionListener {
    override fun onPlaceSelected(place: Place) {
        Log.d("Hey", place.toString())
    }

    override fun onError(status: Status) {
        // TODO: Handle the error.
        Log.d("HOY", "An error occurred: ${status.statusCode}")
    }
})

您使用的是已弃用的代码。尝试替换此行:

val autocompleteFragment1 = fragmentManager?.findFragmentById(R.id.autocomplete_fragment1) as? AutocompleteSupportFragment // Make casting of 'as' to nullable cast 'as?'

有了这个:

val autocompleteFragment1 = supportFragmentManager.findFragmentById(R.id.autocomplete_fragment1) as? AutocompleteSupportFragment // Make casting of 'as' to nullable cast 'as?

经过上述更改后,您的确切代码对我有效,希望对您有所帮助!