iOS中城市定位功能的实现

引入框架:CoreLocation


.h文件

引入CoreLocation/CoreLocation.h

@interface WeatherViewController :UIViewController<</span>CLLocationManagerDelegate>{

    CLLocationManager* locationManager;

}

 

@property (strong, nonatomic) CLLocationManager* locationManager;

 

@end

 
 
.m文件

//开始定位

-(void)startLocation{

    self.locationManager = [[CLLocationManager alloc] init];

    self.locationManager.delegate = self;

    self.locationManager.desiredAccuracy =kCLLocationAccuracyBest;

    self.locationManager.distanceFilter = 10.0f;

    [self.locationManager startUpdatingLocation];

}

 

//定位代理经纬度回调

-(void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {

    

    [locationManager stopUpdatingLocation];

    NSLog(@"location ok");

 

    NSLog(@"%@",[NSString stringWithFormat:@"经度:%3.5f\n纬度:%3.5f",newLocation.coordinate.latitude,newLocation.coordinate.longitude]);

    

    CLGeocoder * geoCoder = [[CLGeocoder alloc] init];

    [geoCoder reverseGeocodeLocation:newLocationcompletionHandler:^(NSArray *placemarks, NSError *error) {

        for (CLPlacemark * placemark in placemarks) {

            

            NSDictionary *test = [placemark addressDictionary];

            //  Country(国家)  State(城市)  SubLocality(区)

            NSLog(@"%@", [test objectForKey:@"State"]);

        }

    }];

}

 

posted @ 2015-11-12 17:26  懒懒初阳  阅读(210)  评论(0编辑  收藏  举报