目錄:[Swift]Xcode實際操做html
本文將演示定位設備的使用。git
在項目導航區,打開視圖控制器的代碼文件【ViewController.swift】swift
1 import UIKit 2 //導入須要用到的定位CoreLocation框架 3 //該框架能夠利用三種技術來實現定位: 4 //1.全球衛星定位系統 5 //2.蜂窩基站三角網定位 6 //3.無線網絡定位服務 7 //其中,全球衛星定位系統是最精確的。 8 import CoreLocation 9 10 //添加一個地理定位的代理協議CLLocationManagerDelegate 11 class ViewController: UIViewController, CLLocationManagerDelegate { 12 13 //添加一個屬性,該屬性是框架提供的一個位置管理類 14 var locationManager:CLLocationManager! 15 override func viewDidLoad() { 16 super.viewDidLoad() 17 // Do any additional setup after loading the view, typically from a nib. 18 19 //爲了使用定位功能,須要建立一個位置管理器實例 20 locationManager = CLLocationManager() 21 //設置位置管理器的代理對象爲當前視圖控制器 22 locationManager.delegate = self 23 //給位置管理對象,設置最佳的精度級別 24 locationManager.desiredAccuracy = kCLLocationAccuracyBest 25 //設置在設備已經從上一次報告的位置,移動了1000米以後,再調用其委託方法 26 locationManager.distanceFilter = 1000.0 27 //開始啓動位置管理器 28 locationManager.startUpdatingLocation() 29 } 30 31 //添加一個代理方法,用來響應位置更新的事件。 32 func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) { 33 //得到定位設備返回的定位數組,並得到數組中的第一個元素 34 let location:CLLocation = locations[0] 35 //得到元素中的經度數值 36 let longitude = location.coordinate.longitude 37 //得到元素中的維度數值 38 let latitude = location.coordinate.latitude 39 //在控制檯打印經度信息 40 print(longitude) 41 //在控制檯打印維度信息 42 print(latitude) 43 44 //系統定位服務是比較耗電的,當不使用定位服務時, 45 //須要及時中止定位服務的運行。 46 locationManager.stopUpdatingLocation() 47 } 48 49 override func didReceiveMemoryWarning() { 50 super.didReceiveMemoryWarning() 51 // Dispose of any resources that can be recreated. 52 } 53 }
須要使用真實設備進行調試。數組