[英]How to detect when map has finished resizing
我需要实时更新一些依赖于地图坐标的UI元素位置。 有时,我的UI布局会发生变化,并且地图会调整大小,然后会设置动画以调整为新的大小。 我找不到一种方法来检测视图何时完成大小调整。
我可以轻松地检测到相机移动事件,但是它们似乎并没有触发调整大小。
来自文档:
https://developers.google.com/android/reference/com/google/android/gms/maps/GoogleMap.OnMapLoadedCallback
对地图的任何更改都应在此回调内部完成,或者查看https://developers.google.com/android/reference/com/google/android/gms/maps/OnMapReadyCallback 。
要潜在地检查地图的大小,请从OnMapReadyCallback查看一下:
这意味着您可能必须为特定地图实现ViewTreeObserver.OnGlobalLayoutListener
,并基于此可能在调整大小时实现更改。
open class MapFragment() : BaseFragment(), OnMapReadyCallback,GoogleMap.OnMapLoadedCallback {
}
使用OnMapReadyCallback来了解地图是否已准备好或已初始加载
override fun onMapReady(googleMap: GoogleMap?) {}
并使用GoogleMap.OnMapLoadedCallback来确定更改后是否加载了地图。
override fun onMapLoaded() {}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.