zoukankan      html  css  js  c++  java
  • 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 init(coder aDecoder: NSCoder) {
            super.init(coder: aDecoder)
        }
        
        @IBOutlet weak var longitudeTxt: UITextField!
        @IBOutlet weak var latitudeTxt: UITextField!
        @IBOutlet weak var HeightTxt: UITextField!
        @IBOutlet weak var addressTxt: UILabel!
        var currLocation : CLLocation!
        
        //地址反编译出错误,不清楚什么问题,我是在模拟器上模拟的
        @IBAction func reverseGeocode(sender: AnyObject) {
            var geocoder = CLGeocoder()
            var p:CLPlacemark?
            geocoder.reverseGeocodeLocation(currLocation, completionHandler: { (placemarks, error) -> Void in
                if error != nil {
                    println("reverse geodcode fail: (error.localizedDescription)")
                    return
                }
                let pm = placemarks as [CLPlacemark]
                if (pm.count > 0){
                    p = placemarks[0] as?

    CLPlacemark println(p) }else{ println("No Placemarks!") } }) } //用于定位服务管理类。它能够给我们提供位置信息和高度信息。也能够监控设备进入或离开某个区域,还能够获得设备的执行方向 let locationManager : CLLocationManager = CLLocationManager() override func viewDidLoad() { super.viewDidLoad() locationManager.delegate = self //设备使用电池供电时最高的精度 locationManager.desiredAccuracy = kCLLocationAccuracyBest //精确到1000米,距离过滤器。定义了设备移动后获得位置信息的最小距离 locationManager.distanceFilter = kCLLocationAccuracyKilometer } override func viewWillAppear(animated: Bool) { locationManager.startUpdatingLocation() println("定位開始") } override func viewWillDisappear(animated: Bool) { locationManager.stopUpdatingLocation() println("定位结束") } func locationManager(manager: CLLocationManager!, didUpdateLocations locations: [AnyObject]!){ currLocation = locations.last as CLLocation longitudeTxt.text = "(currLocation.coordinate.longitude)" latitudeTxt.text = "(currLocation.coordinate.latitude)" HeightTxt.text = "(currLocation.altitude)" } func locationManager(manager: CLLocationManager!, didFailWithError error: NSError!){ println(error) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } }





  • 相关阅读:
    Android直方图递增View
    分析实现Android自定义View之扇形图
    可折叠的ToolBar+抽屉菜单NavigationView+浮动按钮FloatButton
    走着官方的教程入门Material Design(一)
    AndroidStudio — Error:Failed to resolve: junit:junit:4.12错误解决
    Win10提示没有权限使用网络资源问题解决
    Android Socket连接PC出错问题及解决
    Android Studio —— 创建Menu菜单项
    Eclipse出现"Running Android Lint has encountered a problem"解决方案
    关于leal和mov
  • 原文地址:https://www.cnblogs.com/yfceshi/p/6943465.html
Copyright © 2011-2022 走看看