0

当我在具有相同地址的 mapView 上放置 5 个引脚时,当我们点击选定的注释视图时,标注气泡仅显示为两个引脚。当我点击大头针时,标注仅显示两个大头针。

如何解决这个问题,我想显示所有引脚的标注,即使它们具有相同的地址。

4

2 回答 2

0

发生这种情况是因为地图的缩放级别不符合您的坐标要求。尽管您已经在同一地址注释了五个引脚,但坐标应该有微小的差异,以便分开。

您应该使用 longitudeDelta 和 latitudeDelta 来克服这个问题。

例如。你可以设置

<coordinate_object>.latitudeDelta = 0.04;
        <coordinate_object>.longitudeDelta = 0.04;

增量值越小,缩放级别越高,反之亦然。

享受编程!

于 2013-08-13T08:19:07.910 回答
0

在将每个注释添加到地图之前,您应该检查在同一位置或几米内是否已经有另一个注释。如果是这样,那么将这些注释的数据组合成一个可以保持增长的结构(NSMutableArray 是我的第一个猜测),然后将该组合数据添加为新的注释*。然后,当点击 pin 时,它会询问标注详细信息并告诉您点击了哪个注释,您可以在正确设置标注时检查注释是否有一个数据或多个数据。您需要有一个自定义注释类,但如果您要存储关于每个注释类的有用数据,您可能无论如何都需要它。

*您还需要确保第一个注释不会留在地图上,所以也许您可以在执行任何注释之前扫描您的数据并组合成数组。每个注释都会存储一个值数组,其中大多数只有一个,但是如果它们靠得太近,数组就会有很多值,而您的标注函数必须显示这些值。

于 2013-08-14T00:39:23.887 回答