Mapkit:mkannotation - 如何正确重用?

发布于 2024-12-11 06:34:17 字数 350 浏览 0 评论 0原文

为了简单起见,我将跳过一些代码。我有三种 MKannotation(用户位置、紫色图钉和红色图钉)。我用紫色图钉表示的每个对象都有一个唯一的reuseIdentifier(即它的标题)。

我知道,在初始化注释之前,首先使用 reuseIdentifiermapView 中出队是一个很好的做法。我的问题是关于如何重用它的细节。

它是否在以下方面被重用:

a)注释的类型/类(紫色引脚,红色引脚)级别或 b) 单独的注释级别(每个紫色引脚都有唯一的重用标识符)。

任何提示将不胜感激。出于性能原因,我想正确执行此操作。

谢谢你!

I'll skip some code for the sake of simplicity. I have three kinds of MKannotation(s) (user location, purple pin, and red pin). Each object that I'm representing with purple pins have a unique reuseIdentifier (i.e. its title).

I am aware that it's a good practice to dequeue from the mapView using the reuseIdentifier first before initializing an annotation. My question is regarding the specifics of how it's being reused.

Is it getting reused at the:

a) the type/class of annotation (purple pin, red pin) level or
b) the individual annotations level (each purple pins with unique reuseIdentifiers).

Any tip would be appreciated. I want to do this right for the performance reasons.

Thank you!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

快乐很简单 2024-12-18 06:34:17

我认为 MKAnnotationView 重用的工作方式与 UITableViewCells 的重用方式类似。您需要为注释视图的“类”或“类型”指定标识符。

我认为每个视图的唯一重用标识符不会提供任何性能优势(可能相反)。在我看来,您所做的事情将导致缓存太多注释视图并仅重用其中的一些。请记住,注释视图一旦移出屏幕就会被放入重用队列中(就像表视图单元格一样)。

I think that MKAnnotationView reuse works in a manner similar to the one for UITableViewCells. You need to specify an identifier for a "class" or "type" of annotation views.

I think that a unique reuse identifier for each view will not provide any performance benefits (probably the opposite). It seems to me that what you're doing will result in caching way too many annotation views and reusing only a few. Keep in mind, that your annotation views are put into the reuse queue as soon as they are moved offscreen (just like table view cells).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文