调整iOS大小当Google地图视图达到Google徽标的大小时,Google地图会产生显着的性能下降
问题描述:
我发布此消息,因为它似乎是推荐的与地图团队沟通的方式。调整iOS大小当Google地图视图达到Google徽标的大小时,Google地图会产生显着的性能下降
在iOS上调整地图大小时,我们观察到重大性能下降(例如60FPS至40FPS)。
在地图达到与“Google”徽标相同的高度尺寸时,会发生性能降低,从这里可以观察到FPS的显着下降。
值得注意的是,在Android上,当我们执行相同的步骤时,Google徽标会按比例与地图视图的大小成比例地缩放。 Android上未观察到性能下降。
在iOS上,徽标是而不是因视图更改大小而调整大小 - 我们认为这是以某种方式与错误相关的。
使用仪器探查,我们注意到,当抖动发生mach_msg_trap出现在使用中显著增加,与调用链为[IOSurface initWithProperties]
,create_iosurface_with_pixel_format()
和allocate_buffer()
在我们的特殊情况中犯罪嫌疑人的方法,因为这是有原因与该错误无关:我们有一个滚动视图,因为视图是滚动的,并且地图从我们想要将地图缩小到当前可见的屏幕大小的屏幕上被推出。
地图团队中的某人是否可以进行调查?
答
如果我理解正确,你正在做的是改变地图UIView
的frame
,对吧?
有一种不同的方式来做到这一点。设置GMSMapView
框,使其覆盖整个上海华和改变,而不是使用谷歌地图提供的属性padding
填充: Google Maps : Map padding
例子:
let mapInsets = UIEdgeInsets(top: 100.0, left: 0.0, bottom: 0.0, right: 300.0)
mapView.padding = mapInsets