问题描述
我创建了一个自定义对话框并初始化了一个地图,但它没有显示在对话框视图中。
我认为 logcat 消息是一个提示,但我无法捕捉到。消息:
E/DecorView:mWindow.mActivityCurrentConfig 为空
这是DialogFragment
代码:
class ScannerMapDialog : DialogFragment(),OnMapReadyCallback {
private lateinit var googleMap: GoogleMap
override fun onCreateView(inflater: LayoutInflater,container: ViewGroup?,savedInstanceState: Bundle?): View? {
val view = inflater.inflate(R.layout.dialog_scanner,container,false)
(childFragmentManager.findFragmentById(R.id.scanner_map) as? SupportMapFragment)?.getMapAsync(this)
val btn = view.findViewById<Button>(R.id.bt_done)
btn.setonClickListener {
dismiss()
}
return view
}
override fun onStart() {
super.onStart()
val width = (resources.displayMetrics.widthPixels * 0.85).toInt()
val height = (resources.displayMetrics.heightPixels * 0.40).toInt()
dialog!!.window?.setLayout(width,ViewGroup.LayoutParams.WRAP_CONTENT)
}
override fun onMapReady(googleMap: GoogleMap) {
this.googleMap = googleMap
googleMap.mapType = GoogleMap.MAP_TYPE_HYBRID
val markerOptions = MarkerOptions().icon(BitmapDescriptorFactory.fromresource(R.drawable.ic_marker)).anchor(0.5f,0.5f)
val baseLocate = LatLng(37.507543,127.053699)
markerOptions.position(baseLocate)
googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(baseLocate,16f))
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)