作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在我的项目中使用 google places,我将其设置在 fragment 中而不是 Activity 中,我的自动完成 fragment 在 fragment 中。但是,当我尝试搜索它时,我不断收到此错误
Places: No PlaceSelectionListener is set. No result will be delivered.
不知道哪里做错了
下面是我的方法
private fun setupPlacesAutoComplete(){
var placeFields = mutableListOf(Place.Field.ID, Place.Field.NAME, Place.Field.ADDRESS)
Places.initialize(view!!.context, getString(R.string.google_api_key))
placesClient = Places.createClient(view!!.context)
val autoCompleteFragment =
activity?.supportFragmentManager?.findFragmentById(R.id.autoCompleteFragment) as? AutocompleteSupportFragment
autoCompleteFragment?.setPlaceFields(placeFields)
autoCompleteFragment?.setOnPlaceSelectedListener(object : PlaceSelectionListener{
override fun onPlaceSelected(place: Place) {
Toast.makeText(view!!.context, ""+place.address, Toast.LENGTH_SHORT).show()
}
override fun onError(status: Status) {
Toast.makeText(view!!.context, ""+status.statusMessage, Toast.LENGTH_SHORT).show()
}
})
}
我的 fragment 包含这个
<fragment
android:name="com.google.android.libraries.places.widget.AutocompleteSupportFragment"
android:id="@+id/autoCompleteFragment"
android:layout_width="match_parent"
android:layout_height="30dp"/>
最佳答案
如果你已经正确完成了设置
而且,你仍然没有得到上面代码的结果意味着很可能这就是问题所在
如果你想在Activity中使用AutocompleteSupportFragment,你可以这样获取:
AutocompleteSupportFragment autocompleteFragment = (AutocompleteSupportFragment)
getSupportFragmentManager().findFragmentById(R.id.autoCompleteFragment);
如果你想在Fragment中使用AutocompleteSupportFragment,你可以这样获取:
AutocompleteSupportFragment autocompleteFragment = (AutocompleteSupportFragment)
getChildFragmentManager().findFragmentById(R.id.autoCompleteFragment);
我遇到了同样的问题:-)
关于android - 地方 : No PlaceSelectionListener is set. 没有结果将被传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59201876/
当我点击 autocompletefragment 时。日志显示: Places: No PlaceSelectionListener is set. No result will be delive
我正在尝试在我的项目中使用 google places,我将其设置在 fragment 中而不是 Activity 中,我的自动完成 fragment 在 fragment 中。但是,当我尝试搜索它时
我是一名优秀的程序员,十分优秀!