2017-07-29 59 views
2

你好,我想在科特林来实现Google Maps,但在这些代码我getMapAsync是没有得到所谓的地图完美展现,但标记不露面科特林与地图(标记不显示)

var mapFragment : SupportMapFragment?=null 
    mapFragment= fragmentManager.findFragmentById(R.id.map) as SupportMapFragment? 
    mapFragment?.getMapAsync { 
     val sydney = LatLng(22.30, 73.20) 
     mMap!!.addMarker(MarkerOptions().position(sydney).title("Marker in Sydney")) 
     mMap!!.moveCamera(CameraUpdateFactory.newLatLng(sydney)) 


     Toast.makeText(activity,"dfgdg",Toast.LENGTH_LONG).show() } 
+0

'mapFragment'可能是零,这意味着'fragmentManager'无法找到它。你是否在代码中的某个地方初始化了'SupportMapFragment'? –

+0

其实地图在屏幕上显示,但标记不添加 –

+0

你可以显示你的布局XML吗?或者你在某处调用'SupportMapFragment()'(构造函数)? –

回答

1
  1. 您使用了错误的地图实例。
  2. 悉尼纬度经度是-33.8479731,150.6517908
mapFragment?.getMapAsync { 

    map -> // <- this is the map that you got async not mMap    
     val sydney = LatLng(-33.8479731, 150.6517908) 
     map.addMarker(... 
     map.moveCamera(... 
}