NSMutableArray* annotations = [[NSMutableArray alloc] init];
//This is the details needed to make a new annotation.
CLLocationCoordinate2D autoCoord1;
autoCoord1.latitude = 37.78616;
autoCoord1.longitude = -122.41018;
MyAnnotation* autoAnnot1 = [[MyAnnotation alloc] init];
autoAnnot1.coordinate = autoCoord1;
autoAnnot1.title = @"auto";
autoAnnot1.subtitle = @"auto";
[mapViewVC addAnnotation:autoAnnot1];
[annotations addObject:autoAnnot1];
我有这个代码在我的另一个mapkit应用程序中工作,但是我似乎无法在给定坐标的地图上看到注释autoAnnot1
。
代码[mapViewVC addAnnotation:autoAnnot1];
当然应该将该注释添加到地图中吗?
MyAnnotation.h类如下所示:
#import <Foundation/Foundation.h>
#import "MapKit/MapKit.h"
@interface MyAnnotation : NSObject <MKAnnotation> {
CLLocationCoordinate2D coordinate;
NSString* title;
NSString* subtitle;
}
@property (nonatomic, assign) CLLocationCoordinate2D coordinate;
@property (nonatomic, copy) NSString* title;
@property (nonatomic, copy) NSString* subtitle;
@end
以下是显示断点和输出
的图像
答案 0 :(得分:1)
我猜测你向我们展示的代码是在视图控制器的初始化方法中。此时,视图对象尚未实例化。你的网点都是nil
。设置视图的代码应该采用viewDidLoad
方法,该方法在加载视图并连接了您的插件后调用。