0

每当用户移动到一些新坐标时,我想在 mkmapview 中创建一条路线,例如,我在位置 A,现在我正在向位置 B 移动,那么路线也应该更新。

谢谢


我想我没有为我的问题提供足够的信息,现在就在这里,我已经从 a 点开始骑自行车,现在我要去 b 点,然后是 c、d 等,但我还没有到达 b 点,我在中途,我想实现当我移动到点 b 或 c 时我的路线也会更新,我是否从 didupdatetolocation 委托方法获取更新的 lat long 值,将它们存储在数组中然后绘制,因为如果我这样做,那么我每次都从数组中绘制路径?还是有任何其他方法只能用以前的路径刷新更新的路线?

4

2 回答 2

0

通过使用它,您可以更新路线..

CLLocationManager *locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.distanceFilter = kCLDistanceFilterNone;
locationManager.desiredAccuracy = kCLLocationAccuracyBest;
[locationManager startUpdatingLocation];

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

    // update the route.
}
于 2013-06-18T06:16:13.017 回答
0

以下代码用于地图上的绘制路径。

-(void) showRouteFrom: (Place*) f to:(Place*) t {

    if(routes) {
        [mapView removeAnnotations:[mapView annotations]];
        [routes release];
    }

    PlaceMark* from = [[[PlaceMark alloc] initWithPlace:f] autorelease];
    PlaceMark* to = [[[PlaceMark alloc] initWithPlace:t] autorelease];

    [mapView addAnnotation:from];
    [mapView addAnnotation:to];

    routes = [[self calculateRoutesFrom:from.coordinate to:to.coordinate] retain];

    [self updateRouteView];
    [self centerMap];
}

从这里获取更多细节和示例代码。

希望这能帮助很多..

于 2013-06-18T06:48:15.610 回答