swift定位

 1 //
 2 //  ViewController.swift
 3 //  JieCoreLocation
 4 //
 5 //  Created by jiezhang on 14-10-4.
 6 //  Copyright (c) 2014年 jiezhang. All rights reserved.
 7 //
 8
 9 import UIKit
10 import CoreLocation
11
12 class ViewController: UIViewController, CLLocationManagerDelegate{
13
14     required init(coder aDecoder: NSCoder) {
15         super.init(coder: aDecoder)
16     }
17
18     @IBOutlet weak var longitudeTxt: UITextField!
19     @IBOutlet weak var latitudeTxt: UITextField!
20     @IBOutlet weak var HeightTxt: UITextField!
21     @IBOutlet weak var addressTxt: UILabel!
22     var currLocation : CLLocation!
23
24     //地址反编译出错误,不清楚什么问题,我是在模拟器上模拟的
25     @IBAction func reverseGeocode(sender: AnyObject) {
26         var geocoder = CLGeocoder()
27         var p:CLPlacemark?
28         geocoder.reverseGeocodeLocation(currLocation, completionHandler: { (placemarks, error) -> Void in
29             if error != nil {
30                 println("reverse geodcode fail: \(error.localizedDescription)")
31                 return
32             }
33             let pm = placemarks as [CLPlacemark]
34             if (pm.count > 0){
35                 p = placemarks[0] as? CLPlacemark
36                 println(p)
37             }else{
38                 println("No Placemarks!")
39             }
40         })
41     }
42     //用于定位服务管理类,它能够给我们提供位置信息和高度信息,也可以监控设备进入或离开某个区域,还可以获得设备的运行方向
43     let locationManager : CLLocationManager = CLLocationManager()
44
45     override func viewDidLoad() {
46         super.viewDidLoad()
47         locationManager.delegate = self
48         //设备使用电池供电时最高的精度
49         locationManager.desiredAccuracy = kCLLocationAccuracyBest
50         //精确到1000米,距离过滤器,定义了设备移动后获得位置信息的最小距离
51         locationManager.distanceFilter = kCLLocationAccuracyKilometer
52
53     }
54
55     override func viewWillAppear(animated: Bool) {
56         locationManager.startUpdatingLocation()
57         println("定位开始")
58     }
59
60     override func viewWillDisappear(animated: Bool) {
61         locationManager.stopUpdatingLocation()
62         println("定位结束")
63     }
64
65     func locationManager(manager: CLLocationManager!, didUpdateLocations locations: [AnyObject]!){
66         currLocation = locations.last as CLLocation
67         longitudeTxt.text = "\(currLocation.coordinate.longitude)"
68         latitudeTxt.text = "\(currLocation.coordinate.latitude)"
69         HeightTxt.text = "\(currLocation.altitude)"
70     }
71
72     func locationManager(manager: CLLocationManager!, didFailWithError error: NSError!){
73         println(error)
74     }
75
76     override func didReceiveMemoryWarning() {
77         super.didReceiveMemoryWarning()
78
79     }
80
81
82 }
时间: 2024-10-08 23:17:14

swift定位的相关文章

001.Swift定位 CLLocationManager

引用:  import CoreLocation // 如果是ios8.0以后, 在想请求用户的位置信息, 需要主动的请求授权, 系统不会再自动弹出一个窗口 lazy var locationM: CLLocationManager = { let locationM = CLLocationManager() locationM.delegate = self // 请求的是前台定位授权 // 默认情况, 只能在前台获取用户位置信息 如果想想要在后台也获取用户位 那么必须勾选后台模式locat

苹果新贵 Swift 之前世今生

摘要 : 做为一个70后程序员,克里斯先后发明了 LLVM.Clang 和 Swift,请问你做了什么? 上 周出差劳顿,这篇文章几次动笔都未完成,常常躺倒床上就昏睡过去.南方的天气闷热潮湿,让我感到极度的不适应,等到回到北方,天高云清,空气干爽,让人产 生一种「解放区的天是明朗的天」的感觉,我甚至觉得自己的手机.Pad 和 Mac 都满血复活了……直到有人提醒说它们是因为充电和网速的原因.好吧,南方酒店的网络还真叫慢啊…… 以下是正文: ……………… 2010年的夏天,Chris Lattne

swift中判断设备是否打开定位

在基于LBS的项目中很多都会判断是否打开了定位功能.从而做提醒用户打开或者提醒到哪里打开等操作...在OC时候我们这么写: //检测是否开启定位 if ([CLLocationManager locationServicesEnabled] && ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorized || [CLLocationManager authorizationStatus] ==

Swift基础--定位

// // ViewController.swift // JieCoreLocation // // Created by jiezhang on 14-10-4. // Copyright (c) 2014年 jiezhang. All rights reserved. // import UIKit import CoreLocation class ViewController: UIViewController, CLLocationManagerDelegate{ required

Swift - 给表格UITableView添加索引功能(快速定位)

像iOS中的通讯录,通过点击联系人表格右侧的字母索引,我们可以快速定位到以该字母为首字母的联系人分组. 要实现索引,我们只需要两步操作: (1)实现索引数据源代理方法 (2)响应点击索引触发的代理事件 效果图如下: 代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 4

Swift - 使用CoreLocation实现定位(经纬度、海拔、速度、距离等)

CoreLocation是iOS中一个提供设备定位的框架.通过这个框架可以实现定位处理,从而获取位置数据,比如经度.纬度.海拔信息等. 1,定位精度的设置 定位服务管理类CLLocationManager的desiredAccuracy属性表示精准度,有如下6种选择: kCLLocationAccuracyBestForNavigation :精度最高,一般用于导航kCLLocationAccuracyBest : 精确度最佳kCLLocationAccuracyNearestTenMeters

Android &Swift iOS开发:语言与框架对比

转载自:http://www.infoq.com/cn/articles/from-android-to-swift-ios?utm_campaign=rightbar_v2&utm_source=infoq&utm_medium=articles_link&utm_content=link_text 从Android到Swift iOS开发:语言与框架对比 我从2009年开始做Android开发,开始接触Swift是在2014年底,当时组里曾经做过一个Demo App,感觉技术还

swift目录

第二部分 实 战 第3章 UI基础 138 3.1 iOS开发平台限制和方式 138 3.2 iOS SDK介绍 141 第4章 UI开发与控件 182 4.1 窗口与视图 182 4.1.1 UIScreen.UIWindow和UIView 182 4.1.2 界面旋转和大小处理 188 4.2 图片资源的使用 191 4.3 UILabel 201 4.4 UITextField 206 4.5 UIButton 216 4.6 UITableView 221 4.6.1 UITableVi

Swift: 打造滑动解锁文字动画

最近木事,找出来玩了玩facebook的paper.到处都是那个"slide to unlock your phone"的效果啊.忽闪忽闪的小有点炫酷的感觉.于是准备研究一下.木有想到的是居然可以用CAGradientLayer和一个小小的动画就可以实现这个效果."滑动解锁"的效果: 当然啦,首先你需要显示出这个"滑动解锁"的文本.这里咱们就用一个简单的UILabel来解决这个问题. var textExampleLabel: UILabel!