iOS开发中最基本的位置功能实现示例

2020-01-14 16:25:30王冬梅

      
    //  是否显示用户当前位置  
    self.mapView.showsUserLocation = YES;  
    //  设置代理  
    self.mapView.delegate = self;  
      
    //  地图显示类型  
    /** 
     *      MKMapTypeStandard = 0, //  标准地图 
     *      MKMapTypeSatellite,    //  卫星地图 
     *      MKMapTypeHybrid        //  混合地图 
     */  
    self.mapView.mapType = MKMapTypeStandard;  
    //  经纬度  
    CLLocationCoordinate2D coord2D = {39.910650,116.47030};  
    //  显示范围,数值越大,范围就越大  
    MKCoordinateSpan span = {0.1,0.1};  
    //  显示区域  
    MKCoordinateRegion region = {coord2D,span};  
    //  给地图设置显示区域  
    [self.mapView setRegion:region animated:YES];  
    //  是否允许缩放  
    //self.mapView.zoomEnabled = NO;  
    //  是否允许滚动  
    //self.mapView.scrollEnabled = NO;  
  
    //  初始化自定义Annotation(可以设置多个)  
    HMTAnnotation *annotation = [[HMTAnnotation alloc] initWithCGLocation:coord2D];  
    //  设置标题  
    annotation.title = @"自定义标注位置";  
    //  设置子标题  
    annotation.subtitle = @"子标题";  
    //  将标注添加到地图上(执行这步,就会执行下面的代理方法viewForAnnotation)  
    [self.mapView addAnnotation:annotation];  
      
    [self.view addSubview:_mapView];  
      
}  
  
//   返回标注视图(大头针视图)  
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id<MKAnnotation>)annotation{