从 MKMapView 中删除当前不可见的 MKAnnotations 在内存管理、电池生命周期和处理器使用方面是否更好?
我说的是大量注释(比如~1000),在任何给定时间在当前区域中只有大约 20 个可见。我应该让 MapKit 完成隐藏图钉的工作,还是应该自己根据可见区域处理添加/删除注释?
最佳答案
屏幕外的注释不会导致大量内存使用。 MKAnnotation
设计得非常轻巧,您应该尽量保持它们的小。内存占用是关联的 View (MKAnnotationView
)。如果您有超过几百个可见,它将导致速度减慢和大量内存使用,并可能在旧设备上崩溃。 1000 会减慢任何设备的速度,但可能不会使其崩溃。
总而言之,屏幕外注释无关紧要。当屏幕上有太多时,问题就会出现。为此,您必须删除注释以获得更好的性能。您如何决定删除和替换注释是一个更加困难的问题。
关于ios - 删除 MKAnnotations 是否更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4899123/