3

我正在使用一个适用于 iPhone 的应用程序,我需要在其中显示不同位置的 POI 引脚。我需要在第一个 POI 上显示默认弹出的标注。我已经设法为 iOS6 做到了,但在 iOS7 中遇到了问题。我正在下面编写我的代码,它在 iOS6 上运行良好,但在 iOS7 上运行良好。它没有显示任何错误,但对于 iOS7,默认情况下我无法在地图 POI 上标注弹出窗口。

这是我的代码部分:

DDAnnotation *annotation2 = [[DDAnnotation alloc] initWithCoordinate:coordinates addressDictionary:nil] ;
        annotation2.title = [[arrPOIs objectAtIndex:0] objectForKey:@"Name"];
        annotation2.subtitle = [[arrPOIs objectAtIndex:0] objectForKey:@"AmbassadorTagline"];
        annotation2.dictionaryData = [arrPOIs objectAtIndex:0];
        annotation2.strCountNumber = [NSString stringWithFormat:@"1"];

[mapView selectAnnotation:annotation2 animated:YES];
        [annotation2 release];
        annotation2 = nil;

如果您对此有任何想法/建议,请指导我。

4

3 回答 3

2

我将此代码用于ios7,它很好

第一的

#import <MapKit/MapKit.h>

然后在

ViewDidLoad

添加此代码

CLLocationCoordinate2D annotationCoord;
annotationCoord.latitude = someLocation;
annotationCoord.longitude = someLocation;
MKPointAnnotation *annotationPoint = [[MKPointAnnotation alloc] init];
annotationPoint.coordinate = annotationCoord;
annotationPoint.title = @"YourTitle";
annotationPoint.subtitle = @"YourSubtitle";
[map addAnnotation:annotationPoint];
于 2013-10-19T11:31:02.333 回答
1

谢谢大家。最后,我找到了我的问题的解决方案。

我错过了在选择注释之前添加一行。即:[mapView addAnnotation:annotationPoint];

令人惊讶的是它在 iOS6 上没有受到影响。这个问题只出现在 iOS7 上。

于 2013-10-25T11:06:36.253 回答
1

我也用简单的 mapView drop annotation 检查了这个方法的 DDAnnotaion,它适用于 iOS 7。 *可能有以下情况

1) Annotation is not visible on mapView.
2) Annotation is not yet created/added to mapView.

所以请检查一下。或提供您如何以及在何处添加注释的完整代码。

请在此处查看讨论点更多的想法。

于 2013-10-19T13:59:22.820 回答