swift - 在分配仍然存在的情况下重置区域分配器
问题描述
在我的带有 MKMapView 的 ViewController 被取消初始化后,我在 XCode 10.2.1 中收到以下消息。
[内存] 重置区域分配器,24 个分配仍然存在
我在 ViewController 中使用以下代码来清理 MKMapView。我是否这样做或删除 ViewDidDisappear 事件中的委托似乎并不重要。
deinit {
self.mapView.delegate = nil
}
这表示实际的内存泄漏还是我需要修复的其他问题?多次打开/关闭 ViewController 后,它似乎没有泄漏内存。
解决方案
调用mapView.removeAnnotations(mapView.annotations)
deinit 为我修复了它。仅当存在聚集注释并且地图在解除分配之前被缩放或平移时才会发生。