【问题标题】:How do I resolve no work about setOnPlaceSelectedListener?如何解决 setOnPlaceSelectedListener 没有工作?
【发布时间】:2019-12-06 09:45:47
【问题描述】:

我想使用谷歌地图创建两点的方向。 如果设置了源点,我想在 Logcat 中看到 aaaaabbbbb 消息。 但我看不到它。

有人可以告诉我吗?

    // Initialize the AutocompleteSupportFragment
    val autoCompleteFragment_s = supportFragmentManager.findFragmentById(R.id.autocomplete_fragment_source) as AutocompleteSupportFragment
    val autoCompleteFragment_d = supportFragmentManager.findFragmentById(R.id.autocomplete_fragment_destination) as AutocompleteSupportFragment

    // Specify the types of place data to return
    autoCompleteFragment_s.setPlaceFields(mutableListOf(Place.Field.ID, Place.Field.NAME))
    autoCompleteFragment_d.setPlaceFields(mutableListOf(Place.Field.ID, Place.Field.NAME))


    Log.i(javaClass.simpleName,"aaaaa")
    // Set up a PlaceSelectionListener to handle the response.
    autoCompleteFragment_s.setOnPlaceSelectedListener(object: PlaceSelectionListener {

        override fun onPlaceSelected(place: Place){

            Log.i(javaClass.simpleName, "aaaaabbbbb")
            Log.i(javaClass.simpleName, "Place: " + place.getName() + ", " + place.getId())
            val latLngDest = LatLng(10.311794, 123.915863)
            googleMap!!.addMarker(MarkerOptions().position(latLngDest).title("Ehime City"))

        }

        override fun onError(status: Status) {
            Log.i(javaClass.simpleName, "aaaaabbbbb")
            Log.i(javaClass.simpleName, "An error occurred: " + status)
        }
    })

【问题讨论】:

  • 你在 logcat 中看到“Place:”了吗?

标签: android google-maps kotlin


【解决方案1】:

使用此方法将地图缩放到该位置:

public void animateMapCamera(LatLng point, int zoom) {
    if (googleMap != null) {
        CameraUpdate cu = CameraUpdateFactory.newLatLngZoom(point, zoom);
        googleMap.animateCamera(cu);
    }
}



    override fun onPlaceSelected(place: Place){

        Log.i(javaClass.simpleName, "aaaaabbbbb")
        Log.i(javaClass.simpleName, "Place: " + place.getName() + ", " + place.getId())
        val latLngDest = LatLng(10.311794, 123.915863)
        googleMap!!.addMarker(MarkerOptions().position(latLngDest).title("Ehime City"))


            animateMapCamera(latLngDest, 17);

    }

【讨论】:

  • 感谢您的评论!我在 Logcat 中看不到“aaaaabbbbb”消息,但我可以通过移动相机看到 setOnPlaceSelectedListener 的工作。 *我将您的代码从 Java 更改为 Kotlin。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-20
  • 2021-04-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多