系统自带地图  框架: CoreLocation MapKit

CLLocationManager --> 定位管理者  CLGeocoder --> 地理编码器 MKMapView --> 地图view

允许用户定位
    [_locationManager requestAlwaysAuthorization];//总是允许
    [_locationManager requestWhenInUseAuthorization];//用户用时允许

用户移动100米的时候才会再次调用位置代理方法
    _locationManager.distanceFilter = 100.0;

开始定位

  [_locationManager startUpdatingLocation];

CLLocationManager 代理方法:(获取到信息室处理)

  - (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray<CLLocation *> *)locations{
  }

创建比例系数  显示在哪个点上
   MKCoordinateRegion region = MKCoordinateRegionMake(userLocation.coordinate, MKCoordinateSpanMake(0.1, 0.1));
   比例系数赋值
   _mapView.region = region;

CLGeocoder:

编码:提供某个字符串 来定位位置:- (void)geocodeAddressString:(NSString *)addressString completionHandler:(CLGeocodeCompletionHandler)completionHandler;

反编码:根据位置显示该地方的名字等等[_geocoder reverseGeocodeLocation:placemark.location  completionHandler:^(NSArray<CLPlacemark *> * _Nullable placemarks, NSError * _Nullable error) {}];

添加大头针:

  AGAnnotion *agAnnotion = [[AGAnnotion alloc]init];
    agAnnotion.coordinate = CLLocationCoordinate2DMake(36.0, 120.0);
    agAnnotion.title = @"coco";
    [_mapView addAnnotation:agAnnotion];
自定义气泡

  继承 NSObject , 遵守 MKAnnotation 协议

  创建三个属性

  @property (nonatomic, assign) CLLocationCoordinate2D coordinate;
  @property (nonatomic, copy) NSString *title;
  @property (nonatomic, copy) NSString *subtitle;

高德:

1. 验证key
    [MAMapServices sharedServices].apiKey = @“申请的key”;
 2. 初始化
    mapView = [[MAMapView alloc] initWithFrame:CGRectMake(0, 0, CGRectGetWidth(self.view.frame), CGRectGetHeight(self.view.bounds))];
    mapView.delegate = self;
    mapView.language = MAMapLanguageEn; // 设置地图显示语言
    mapView.mapType = MAMapTypeStandard; // 地图类型
    /*
     MAMapTypeSatellite:卫星地图
     MAMapTypeStandard:标准地图
     */

mapView.showTraffic = YES; // 显示实时交通路况
    [self.view addSubview:mapView];
    mapView.showsUserLocation = YES;

mapView的定位模式: userTrackingMode

  MAUserTrackingModeNone:不跟随用户位置,仅在地图上显示。

  MAUserTrackingModeFollow:跟随用户位置移动,并将定位点设置成地图中心点

  MAUserTrackingModeFollowWithHeading:跟随用户的位置和角度移动

系统的地图和 高德地图 的区别

CoreLocation MKMapView 地图的更多相关文章

  1. iOS - MKMapView 地图

    1.创建 MKMapView 地图 在 iOS6 或者 iOS7 中实现这个功能只需要添加地图控件.设置用户跟踪模式.在 mapView:didUpdateUserLocation: 代理方法中设置地 ...

  2. Corelocation及地图控件学习笔记

    Corelocation基本使用 在地图章节的学习中,首先要学的便是用户位置定位,因此我们首先要掌握Corelocation的使用.(在IOS8以前可以系统会直接请求授权,现在需要我们自己调用方式通知 ...

  3. CoreLocation MKMapView

    高德开发者平台 有开发指南 iOS9配置网络: <key>NSAppTransportSecurity</key> <dict> <key>NSAllo ...

  4. iOS开发:MKMapView地图内存持续增加的释放解决办法

    内存持续增加的释放解决办法 最近修改一个用到MKMapView的项目,内存一直占用过多,每次拖拽地图时还会增加占用,且一直无法释放. 经过两天的排查,最后锁定是创建的self.map对象在加载地图的时 ...

  5. [Xcode 实际操作]四、常用控件-(17)为MKMapView地图上显示提示框

    目录:[Swift]Xcode实际操作 本文将演示当点击地图上的标注圆点时,弹出信息窗口. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit ...

  6. [Xcode 实际操作]四、常用控件-(18)MKMapView地图,将地理坐标转换为实际地名

    目录:[Swift]Xcode实际操作 本文将演示将地理坐标转换为实际地名. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit //首先往视 ...

  7. iOS地图

    地图 1.主要用到了地图展示和定位功能 CoreLocation框架的使用: 导入头文件        #import <CoreLocation/CoreLocation.h>CoreL ...

  8. 【iOS】7.4 定位服务->3.1 地图框架MapKit 功能1:地图展示

    > 本文并非最终版本,如果想要关注更新或更正的内容请关注文集,联系方式详见文末,如有疏忽和遗漏,欢迎指正. --- > 本文相关目录: ================== 所属文集:[[ ...

  9. iOS_地图之显示附近微博

          1.首先需要新建一个MKMapView地图对象,在storyBoard中拖拽一个,在工程中导入MapKit.framework: 2.遵守MKMapViewDelegate协议,设定显示地 ...

随机推荐

  1. Ubuntu系统下载工具的推荐

    源 起 大家在上手一段时间Ubuntu系统后,可能突然想起最近新出了一些电影想要下载来看看,但如果用Wine运行迅雷,不是没反应就是启动后也不能下载,针对这个问题,根据我的使用体验推荐大家两款Ubun ...

  2. 【原创】Tomcat集群环境下对session进行外部缓存的方法(1)

    BJJC网改版, 计划将应用部署在tomcat集群上,集群的部署方案为Apache+Tomcat6,连接件为mod_jk,其中开启了session复制和粘性session.计划节点数为3个. 到这,或 ...

  3. a标签替代input的submit提交功能

    在工作中有时候会遇到A标签,但是提交表单的时候我们需要用到submit来提交表单,下面几行代码很好的解决了这个问题! <div class="btn"><a hr ...

  4. dicom格式文件 界定标识符的处理

    转自:http://www.cnblogs.com/assassinx/archive/2013/05/18/3084854.html 说到底无非几个事情 :1传输语法确定 2数据元素读取 3 7fe ...

  5. UI2_UICollectionViewPicture

    // AppDelegate.m // UI2_UICollectionViewPicture // // Created by zhangxueming on 15/7/16. // Copyrig ...

  6. Codevs 1010 过河卒

     时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 如图,A 点有一个过河卒,需要走到目标 B 点.卒行走规则:可以向下.或者向右.同 ...

  7. 转帖:使用TortoiseGit处理代码冲突

    原址:http://www.cnblogs.com/jason-beijing/p/5718190.html   场景一  user0 有新提交 user1 没有pull -> 写新代码 -&g ...

  8. void指针

    指针有两个属性:指向变量/对象的地址 和长度 但是指针只存储地址,长度则取决于指针的类型 编译器根据指针的类型从指针指向的地址向后寻址 指针类型不同则寻址范围也不同,比如: int*从指定地址向后寻找 ...

  9. zedboard搭建交叉编译环境

    参考:http://blog.csdn.net/xzyiverson/article/details/11264417 我安装的LINUX12.04LTS 双系统 下载好交叉编译软件xilinx-20 ...

  10. Markdown 使用说明

    使用说明 ========= @[手册|帮助|Markdown] - **马克飞象**是一款专为印象笔记打造的Markdown编辑器. - 特别需要说明的一点是增加了`@(笔记本)[标签]`语法,以此 ...