标签:style blog io color ar 使用 sp for strong
在地图视图上标注一些点来特别说明这些地理位置
方案:
1.创建一个新的类,命名为 MyAnnotation。
2.确保这个类要实现 MKAnnotation 协议。
3.给这个类定义一个类型为 CLLocationCoordinate2D 的属性,命名为 coordinate。特别要注意这个参数需要标示为只读类型的。因为 MKAnnotation 这个协议中定义的 Coordinate
也是只读类型的。
4.同理,定义两个 NSString 类型的属性,分别命名为 title 和 subtitle。这两个参数用来保存锚点的标题和内容信息。
5.给这个类添加一个初始化方法,这个方法需要接收一个 CLLocationCoordinate2D类型的参数。在这个方法中把我们在步骤 3 定义的那个属性传递进来..由于这个属性是只读的, 他并不能在这个类以外进行赋值。因此,这个初始化方法也就是一个桥梁,使我们能够正常的往这个了类中进行传递值。同理 title 和 subtitle 也要进行类似的操作。
6.初始化 MyAnnotation 这个类,然后把他添加到你的地图中,通过 Annotation 这个方法。
#import <Foundation/Foundation.h> #import <MapKit/MapKit.h> @interface MyAnnotation : NSObject<MKAnnotation> //coordinate [k??‘?:d?ne?t] 坐标 annotation [æn?‘te??(?)n]注释 @property (nonatomic, readonly)CLLocationCoordinate2D coordinate; @property (nonatomic, copy, readonly)NSString *title; @property (nonatomic, copy, readonly)NSString *subtitle; //初始化方法 - (id)initWithCoordinates:(CLLocationCoordinate2D)paramCoordinates title:(NSString *)paramTitle subTitle:(NSString *)paramSubTitle; @end
.m
#import "MyAnnotation.h" @implementation MyAnnotation - (id)initWithCoordinates:(CLLocationCoordinate2D)paramCoordinates title:(NSString *)paramTitle subTitle:(NSString *)paramSubTitle{ self = [super init]; if (self != nil) { _coordinate = paramCoordinates; _title = paramTitle; _subtitle = paramSubTitle; } return self; } @end
- (void)viewDidLoad { [super viewDidLoad]; self.view.backgroundColor = [UIColor whiteColor]; self.myMapView = [[MKMapView alloc]initWithFrame:self.view.bounds]; self.myMapView.mapType = MKMapTypeStandard; self.myMapView.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight; self.myMapView.delegate = self; [self.view addSubview:_myMapView]; //在地图上添加锚点 //创建一个简单的位置 degrees 角度,度数 latitude纬度 longitude经度 CLLocationCoordinate2D location = CLLocationCoordinate2DMake(35.8219, 116.0225); // Create the annotation using the location MyAnnotation *annotation = [[MyAnnotation alloc]initWithCoordinates:location title:@"My Title" subTitle:@"My Sub Title"]; //将锚点添加到地图上 [_myMapView addAnnotation:annotation]; }
二 . 添加不同颜色的锚点
标签:style blog io color ar 使用 sp for strong
原文地址:http://www.cnblogs.com/safiri/p/4081904.html