zoukankan      html  css  js  c++  java
  • iOS 系统地图 获取当前城市

    -(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations

    {

        

        //此处locations存储了持续更新的位置坐标值,取最后一个值为最新位置,如果不想让其持续更新位置,则在此方法中获取到一个值之后让locationManager stopUpdatingLocation

        

        CLLocation *currentLocation = [locations lastObject];

        

        // 获取当前所在的城市名

        

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

        

        //根据经纬度反向地理编译出地址信息

        

        [geocoder reverseGeocodeLocation:currentLocation completionHandler:^(NSArray *array, NSError *error)

         

        {

            

            if (array.count > 0)

                

            {

                

                CLPlacemark *placemark = [array objectAtIndex:0];

                

                //将获得的所有信息显示到label上

                

                NSLog(@"%@",placemark.locality);

                

                [[NSUserDefaults standardUserDefaults] setValue:placemark.locality forKey:@"PlaceMarkName"];

                

                //获取城市

                

    //            NSString *city = placemark.locality;

                

    //            if (!city) {

    //                

    //                //四大直辖市的城市信息无法通过locality获得,只能通过获取省份的方法来获得(如果city为空,则可知为直辖市)

    //                

    //                city = placemark.administrativeArea;

    //                

    //            }

    //            

    //            self.cityName = city;

    //            

    //        }

    //        

    //        else if (error == nil && [array count] == 0)

    //            

    //        {

    //            

    //            NSLog(@"No results were returned.");

    //            

    //        }

    //        

    //        else if (error != nil)

    //            

    //        {

    //            

    //            NSLog(@"An error occurred = %@", error);

    //            

            }

    //

        }];

        

        //系统会一直更新数据,直到选择停止更新,因为我们只需要获得一次经纬度即可,所以获取之后就停止更新

        

        [manager stopUpdatingLocation];

        

    }

  • 相关阅读:
    Ubuntu16.04编译Android6.0/cm13.0教程及相关错误解决办法
    TWRP基于omnirom 6.0.1编译教程
    教你一招:解决Win 10安装软件时提示:文件系统错误 (-1073740940)
    红米3 TWRP-3.0.2(android_6.0.1_r72分支)中文版Recovery更新于20161018
    C# Note32: 查漏补缺
    postgreSQL使用杂谈
    Granfana+PostgreSQL
    WIndows下使用Grafana+InfluxDB打造监控系统
    【译】历史上的名人如何利用不同的思维方式成就自己
    【译】Focused and Diffuse Modes(专注与发散模式)
  • 原文地址:https://www.cnblogs.com/guochaoboke/p/4919631.html
Copyright © 2011-2022 走看看