zoukankan      html  css  js  c++  java
  • [Xcode 实际操作]四、常用控件-(17)为MKMapView地图上显示提示框

    目录:[Swift]Xcode实际操作

    本文将演示当点击地图上的标注圆点时,弹出信息窗口。

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

     1 import UIKit
     2 //首先往视图控制器类文件中,引入地图框架
     3 import MapKit
     4 
     5 //添加地理地图代理协议MKMapViewDelegate
     6 class ViewController: UIViewController, MKMapViewDelegate {
     7 
     8     override func viewDidLoad() {
     9         super.viewDidLoad()
    10         // Do any additional setup after loading the view, typically from a nib.
    11         //初始化一个地图对象,并制定其位置和尺寸:与根视图保持一致
    12         let mapView = MKMapView(frame: self.view.bounds)
    13         //在地图中,显示当前用户的地理位置
    14         mapView.showsUserLocation = true
    15         //设置地图的显示样式,为标准的地图类型
    16         mapView.mapType = MKMapType.standard
    17         
    18         //设置在地图视图上显示指南针控件
    19         mapView.showsCompass = true
    20         //设置在地图视图上显示缩放信息
    21         mapView.showsScale = true
    22         //设置在地图视图上显示交通信息
    23         mapView.showsTraffic = true
    24         
    25         //设置在地图视图上显示三维建筑信息
    26         mapView.showsBuildings = true
    27         //设置在地图视图上显示兴趣点信息
    28         mapView.showsPointsOfInterest = true
    29         //显示当前用户的地理位置
    30         mapView.showsUserLocation = true
    31         
    32         //设置在地图视图上,是否允许用户查看当前的地图
    33         mapView.isScrollEnabled = false
    34         //设置在地图视图上,是否使用地图相机的头信息
    35         mapView.isRotateEnabled = false
    36         //设置在地图视图上,是否允许用户使用捏合手势来放大和缩小地图
    37         mapView.isZoomEnabled = false
    38         //设置在地图视图上,当此属性设置为真时,并且有摄像机与地图关联时,
    39         //可以使用摄像机的俯仰角,来倾斜地图的平面
    40         mapView.isPitchEnabled = true
    41         
    42          //通过设定经纬度,来创建一个地理位置
    43         let coordinate2D = CLLocationCoordinate2D(latitude: 39.915352, longitude: 116.397105)
    44         //设置地图显示区域的缩放级别
    45         let zoomLevel = 0.02
    46         //初始化一个常量,标识地图对象的显示区域
    47         let region = MKCoordinateRegion(center: coordinate2D, span: MKCoordinateSpan(latitudeDelta: zoomLevel, longitudeDelta: zoomLevel))
    48         //设置地图对象的显示区域
    49         mapView.setRegion(region, animated: true)
    50         
    51         //初始化一个点注释对象
    52         let objectAnnotation = MKPointAnnotation()
    53         //设置注释对象的地理位置
    54         objectAnnotation.coordinate = coordinate2D
    55         //设置注释对象的标题内容
    56         objectAnnotation.title = "Imperial Palace"
    57         //设置注释对象的子标题内容
    58         objectAnnotation.subtitle = "China's biggest palace."
    59         
    60         //将注释窗口对象,添加到地图中
    61         mapView.addAnnotation(objectAnnotation)
    62         
    63         //将地图视图对象,添加到当前视图控制器的根视图
    64         self.view.addSubview(mapView)
    65     }
    66 
    67     override func didReceiveMemoryWarning() {
    68         super.didReceiveMemoryWarning()
    69         // Dispose of any resources that can be recreated.
    70     }
    71 }
  • 相关阅读:
    [51单片机] TFT2.4彩屏1 [文字显示 画矩形]
    [51单片机] 中断1-中断整体介绍
    [汇编] 从键盘输入一个一位数字,然后响铃n声
    [汇编] 比较2个字符串是否相等
    [汇编] 将字符串里的一个'&'字符换成空格
    [汇编] 2数相加极简单版
    mysql的IFNULL函数
    mysql 中 unix_timestamp和from_unixtime函数
    Excel实现二级菜单联动
    Hibernate中@Embedded和@Embeddable注解
  • 原文地址:https://www.cnblogs.com/strengthen/p/10017108.html
Copyright © 2011-2022 走看看