zoukankan      html  css  js  c++  java
  • iOS下获取用户当前位置的信息

    #import <MapKit/MKMapView.h>
    
    @interface ViewController (){
        CLLocationManager *_currentLoaction;
        CLGeocoder *_geocoder;
        CLPlacemark *_placeMark;
    }
    
    - (void)viewDidLoad
    {
        [super viewDidLoad];
    	// Do any additional setup after loading the view, typically from a nib.
        _geocoder = [[CLGeocoder alloc] init];
        
        _currentLoaction = [[CLLocationManager alloc] init];
        _currentLoaction.delegate = self;
        [_currentLoaction startUpdatingLocation]; 
    }
    
    #pragma mark - Location
    - (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error {
        NSLog(@"locError:%@", error);
    }
    
    - (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
        CLLocationCoordinate2D locat = [newLocation coordinate];
        double lattitude = locat.latitude;
        double longitude = locat.longitude;
        CLGeocodeCompletionHandler handler = ^(NSArray *placemark, NSError *error)
        {
            for (CLPlacemark *mark in placemark) {
                NSMutableDictionary *area_dic = [mark addressDictionary];
                [area_dic setValue:[NSString stringWithFormat:@"%f", lattitude] forKeyPath:@"lattitude"];
                [area_dic setValue:[NSString stringWithFormat:@"%f", longitude] forKeyPath:@"longitude"];
                NSLog(@"area_dic is %@", area_dic);
                
                NSArray *array = [area_dic objectForKey:@"FormattedAddressLines"];
                NSString *address = [area_dic objectForKey:@"FormattedAddressLines"];
                NSLog(@"array is %@", array);
                address = [array objectAtIndex:0];
                NSLog(@"address is %@", address);
                address = [area_dic objectForKey:@"City"];
                NSLog(@"City is %@", address);
            }
        };
        [_geocoder reverseGeocodeLocation:newLocation completionHandler:handler];
    }
    
  • 相关阅读:
    logging模块、sys模块、shelve模块
    re模块、hashlib模块
    包、常用模块
    模块
    迭代器、生成器、递归、二分法
    函数对象、函数嵌套、名称空间与作用域、闭包函数、装饰器
    函数
    文件处理
    字符编码
    Djiango导读
  • 原文地址:https://www.cnblogs.com/JayK/p/4067499.html
Copyright © 2011-2022 走看看