0

这似乎是一个非常基本的问题,但我没有找到任何东西,我已经尝试了所有!我只想制作一个按钮来放大用户位置!这是我到目前为止所得到的:

CLLocationCoordinate2D userLocationCoordinate;

- (void)viewDidLoad {
    [super viewDidLoad];
    [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationSlide];
    locationManager = [[CLLocationManager alloc] init];
    locationManager.delegate = self;
    locationManager.distanceFilter = kCLDistanceFilterNone;
    locationManager.desiredAccuracy = kCLLocationAccuracyBest;
    if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0){
        [self.locationmanager requestWhenInUseAuthorization];}
    [locationManager startUpdatingLocation];
}

- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
    NSLog(@"OldLocation %f %f", oldLocation.coordinate.latitude, oldLocation.coordinate.longitude);
    NSLog(@"NewLocation %f %f", newLocation.coordinate.latitude, newLocation.coordinate.longitude);
    userLocationCoordinate.latitude = newLocation.coordinate.latitude;
    userLocationCoordinate.longitude = newLocation.coordinate.longitude;

}

-(IBAction)showUserLocation:(id)sender{

    [self.mapview setCenterCoordinate:userLocationCoordinate animated:YES];

}

请我需要帮助,如果有一种我不使用CLLocationManager它的方法会更好。

谢谢。

4

1 回答 1

0

您仍然需要CLLocationManager向用户请求位置权限,但您可以使用请求地图视图以用户位置为中心的setUserTrackingMode方法。MKMapView

如果您不想在用户移动时继续更新地图位置,则应将跟踪模式Follow设置为,然后None在几秒钟后将其设置为。

于 2015-06-22T23:42:35.140 回答