在iOS开发中,地图也是很多App都需要使用的功能。本文主要对iOS中的地图知识点进行介绍。需要说明的是地图看似很复杂,其实它仅仅是一个控件,就和UIButton、UITableView等一样。本文代码环境为:Xcode 10.2。
一、理论知识
地图既然是控件,就可以在StoryBoard和代码中使用
地图上如果想要显示用户的位置,必须与定位配合,那么就需要创建定位管理器、设置权限等,可以参考iOS开发之定位,同时需要设置地图的属性(代码设置也可以)如下图
showUserLocation
二、准备工作
1.拖拽一个地图到控制器View中
StoryBoard中添加地图控件
2.拖拽IBOutlet
3.声明CLLocationManager
4.声明权限
5.设置gpx数据
二、地图基本使用
-
实现功能:显示地图,并且显示用户所在的位置,点击用户的位置,显示一个气泡展示用户的位置信息
-
代码
@interface ViewController ()//地图 很多属性都在SB中配置了@property (weak, nonatomic) IBOutlet MKMapView *map;@property (strong, nonatomic) CLLocationManager *manager;@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; [self showUserInfo]; }// 如果想显示用户的位置 只需要下面三行代码-(void)showUser{ _manager = [[CLLocationManager alloc]init]; [_manager requestAlwaysAuthorization]; _map.userTrackingMode = MKUserTrackingModeFollowWithHeading; }// 改变用户蓝点点击后的气泡信息-(void)showUserInfo{ _map.delegate = self; [self showUser]; }//通过代理改变userLocation的标题实现更改信息- (void)mapView:(MKMapView *)mapView didUpdateUserLocatio