目录
GPS 定位简介
在 iOS SDK 中提供了两个框架,来实现位置服务。分别是 CoreLocation.framework 和 MapKit.framework。
CoreLocation.framework 主要提供了获得设备信息的API,例如经纬度信息等;MapKit.framework 主要提供了展示地图的API。
这两个框架的核心类是 CLLocationManager类和 MKMapView类,CLLocationManager类提供了获得位置信息的功能,MKMapView类提供了展示地图的功能。
使用 MKMapView 显示地图
导入框架 MapKit.framework;
在storyboard中添加组件;
#import "MapKit/MapKit.h"
@interface ViewController : UIViewController<MKMapViewDelegate>
@property (strong, nonatomic) IBOutlet MKMapView *myMapView;
- (IBAction)change:(UISegmentedControl *)sender {
// 地图类型
NSInteger index = sender.selectedSegmentIndex;
switch (index) {
case 0:
self.myMapView.mapType = MKMapTypeStandard;
break;
case 1:
self.myMapView.mapType = MKMapTypeSatellite;
break;
case 2:
self.myMapView.mapType = MKMapTypeHybrid;
break;
default:
break;
}
}
// 开始加载地图
- (void)mapViewWillStartLoadingMap:(MKMapView *)mapView{
NSLog(@"mapViewWillStartLoadingMap...");
}
// 地图加载完成
- (void)mapViewDidFinishLoadingMap:(MKMapView *)mapView{
NSLog(@"mapViewDidFinishLoadingMap...");
}
- (void)viewDidLoad {
[super viewDidLoad];
// 设置代理
self.myMapView.delegate = self;
// Do any additional setup after loading the view.
}
使用 CLLocationManager 获得经纬度
导入 CoreLocation.framework 框架