在内存管理,电池续航时间和处理器使用方面,从MKMapView中删除当前不可见的MKAnnotations是否更好?
我在谈论大量注释(比如说~1000),在任何给定时间内当前区域只有大约20个可见。我应该让MapKit通过隐藏引脚来完成他的工作,还是应该根据可见区域来处理添加/删除注释?
答案 0 :(得分:2)
屏幕外的注释不会导致大量内存使用。 MKAnnotation
的设计非常轻巧,你应该尽量保持它们的小巧。内存耗尽是关联的视图(MKAnnotationView
)。如果您有超过几百个可见,它将导致速度减慢和大量内存使用,可能会在旧设备上崩溃。 1000会减慢任何设备,但可能不会崩溃。
总而言之,屏幕外注释并不重要。屏幕上有太多问题时会出现问题。为此,您必须删除注释才能获得更好的性能。您如何决定删除和替换注释是一个更加困难的问题。
答案 1 :(得分:1)
我确保同时显示不超过100个注释。当您让MKMapView处理它时,如何防止用户缩小到整个世界,从而导致mapView显示所有1000个注释?