• [Swift通天遁地]一、超级工具-(8)地图视图MKMapView的常用代理方法


    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
    ➤微信公众号:山青咏芝(shanqingyongzhi)
    ➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/
    ➤GitHub地址:https://github.com/strengthen/LeetCode
    ➤原文地址:https://www.cnblogs.com/strengthen/p/10145799.html 
    ➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
    ➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

    目录:[Swift]通天遁地Swift

    本文将演示地图视图MKMapView的常用代理方法。

    在项目导航区,打开视图控制器的代码文件【ViewController.swift】

    现在开始编写代码,创建一个地图视图,并设置地图视图的代理对象。

     1 import UIKit
     2 //在当前的类文件中引入所需的类库
     3 import MapKit
     4 //给当前的类添加一个地图视图的代理协议MKMapViewDelegate
     5 class ViewController: UIViewController, MKMapViewDelegate {
     6 
     7     override func viewDidLoad() {
     8         super.viewDidLoad()
     9         // Do any additional setup after loading the view, typically from a nib.
    10         
    11         //初始化一个地图视图,并使地图视图的显示区域,和设备的屏幕尺寸相同
    12         let mapView = MKMapView(frame: self.view.bounds)
    13         //设置地图的代理对象为当前的视图控制器对象
    14         mapView.delegate = self
    15         //设置地图的类型为标准类型
    16         mapView.mapType = MKMapType.standard
    17         
    18         //初始化一个地理坐标,使地图加载该坐标位置上的地理信息
    19         let coordinate2D = CLLocationCoordinate2D(latitude: 39.915352, longitude: 116.397105)
    20         //根据地理坐标,初始化一个地理区域,并设置缩放比例
    21         let region = MKCoordinateRegionMake(coordinate2D, MKCoordinateSpanMake(0.02, 0.02))
    22         //设置地图的显示区域
    23         mapView.setRegion(region, animated: true)
    24         
    25         //将地图视图添加到当前视图控制器的根视图
    26         self.view.addSubview(mapView)
    27     }
    28     
    29     //1.添加一个代理方法,用来监听地图区域将要发生变化时的动作。
    30     //当用户在地图上进行平移或缩放操作时,该方法会被调用。
    31     func mapView(_ mapView: MKMapView, regionWillChangeAnimated animated: Bool) {
    32         print("regionWillChange")
    33     }
    34     
    35     //2.添加一个代理方法,用来监听地图区域完成变化时的动作。
    36     func mapView(_ mapView: MKMapView, regionDidChangeAnimated animated: Bool) {
    37         print("regionDidChange")
    38     }
    39     
    40     //3.添加一个代理方法,当地图视图即将加载地图信息时,调用此方法。
    41     func mapViewWillStartLoadingMap(_ mapView: MKMapView) {
    42         print("mapViewWillStartLoadingMap")
    43     }
    44 
    45     //4.添加一个代理方法,当地图视图完成地图信息的加载时,调用此方法。
    46     func mapViewDidFinishLoadingMap(_ mapView: MKMapView) {
    47         print("mapViewDidFinishLoadingMap")
    48     }
    49     
    50     //5.添加一个代理方法,当地图视图即将渲染地图信息时,调用此方法。
    51     func mapViewWillStartRenderingMap(_ mapView: MKMapView) {
    52         print("mapViewWillStartRenderingMap")
    53     }
    54     
    55     //6.添加一个代理方法,当地图视图完成地图信息的渲染时,调用此方法。
    56     func mapViewDidFinishRenderingMap(_ mapView: MKMapView, fullyRendered: Bool) {
    57         print("mapViewDidFinishRenderingMap")
    58     }
    59 
    60     override func didReceiveMemoryWarning() {
    61         super.didReceiveMemoryWarning()
    62         // Dispose of any resources that can be recreated.
    63     }
    64 }
  • 相关阅读:
    终于成功发布我的博客园处女贴,不过,真的颇费周章,两个htmleditor都非常不好用~~
    全文本代码着色(带源码和示例)
    BlogBench Ver 1.0 发布
    [在windows上使用Unix工具]cygwin
    Linux下压缩与解压
    Linux设置界面或命令行启动
    perl模块安装
    Linux下patch的制作和应用
    TAR命令参数详解
    在windows上使用Sysinternals工具
  • 原文地址:https://www.cnblogs.com/strengthen/p/10145799.html
Copyright © 2020-2023  润新知