1.MapKit的基本概念
- 使用Core Location框架获取当前设备的位置信息,而使用MapKit框架能够显示该信息
- 使用地图服务时,需要添加 MapKit.framework框架
- MapKit的大部分功能由MKMapView完成,主要负责地图的显示
2.示例代码
.h中的代码
#import <MapKit/MapKit.h> @interface MainViewController : UIViewController<MKMapViewDelegate,CLLocationManagerDelegate> @property (strong, nonatomic) IBOutlet MKMapView *mapView; </span>
.m中的代码
//设置是否显示用户当前位置 self.mapView.showsUserLocation = YES; //设置代理 self.mapView.delegate = self; //设置地图显示类型 //MKMapTypeStandard标准型 //MKMapTypeSatellite 卫星 //MKMapTypeHybrid混合型 self.mapView.mapType = MKMapTypeStandard; //经纬度坐标 CLLocationCoordinate2D coord = {40.029254,116.337254}; //显示范围精度 MKCoordinateSpan span = {0.1,0.1}; //显示区域 MKCoordinateRegion region = {coord,span}; //地图初始化时地图的位置 [self.mapView setRegion:region];
3.地图常用的委托方法
返回标注视图(大头针视图)
-(MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id<MKAnnotation>)annotation
更新当前位置时调用
-(void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation;
选中标注视图
-(void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view
地图的显示区域改变时调用
-(void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated
位置与地图:地图的使用
时间: 2024-10-07 19:39:10