iOS 6 地图 - 找不到方向
Posted
技术标签:
【中文标题】iOS 6 地图 - 找不到方向【英文标题】:iOS 6 Maps - Cannot Find Directions 【发布时间】:2013-01-13 09:48:54 【问题描述】:我正在尝试将我的用户定向到 ios 6 原生地图,以获取从他们当前位置到纬度、经度位置的路线,如下所示:
MKPlacemark *placemark = [[MKPlacemark alloc] initWithCoordinate:placeLocation addressDictionary:nil];
MKMapItem *destination = [[MKMapItem alloc] initWithPlacemark:placemark];
MKMapItem *currentLocation = [MKMapItem mapItemForCurrentLocation];
NSArray *mapItems = @[destination, currentLocation];
NSDictionary *options = @MKLaunchOptionsDirectionsModeKey:MKLaunchOptionsDirectionsModeDriving, MKLaunchOptionsMapTypeKey: [NSNumber numberWithInteger:MKMapTypeStandard], MKLaunchOptionsShowsTrafficKey:@YES;
[MKMapItem openMapsWithItems:mapItems launchOptions:options];
我已将模拟器设置为我的纬度和经度。我的代码有什么问题?
【问题讨论】:
【参考方案1】:代码很好,对我有用,因为有一条可能的路线
当可以给出当前位置和目的地之间的方向时有效。 如果 currentLocation 在美国,地图将失败,因为它无法从德国导航到美国。 但如果 currentLocation 也在欧洲,地图应用程序工作正常 :)
//placeMarkCoord fixed to germany
MKPlacemark *placemark = [[MKPlacemark alloc] initWithCoordinate:CLLocationCoordinate2DMake(51.0, 10.0) addressDictionary:nil];
MKMapItem *destination = [[MKMapItem alloc] initWithPlacemark:placemark];
//currentLocation must be reachable from destination!
//MKMapItem *currentLocation = [MKMapItem mapItemForCurrentLocation];
placemark = [[MKPlacemark alloc] initWithCoordinate:CLLocationCoordinate2DMake(51.0, 11.0) addressDictionary:nil];
MKMapItem *currentLocation = [[MKMapItem alloc] initWithPlacemark:placemark];
NSArray *mapItems = @[destination, currentLocation];
NSDictionary *options = @MKLaunchOptionsDirectionsModeKey:MKLaunchOptionsDirectionsModeDriving, MKLaunchOptionsMapTypeKey: [NSNumber numberWithInteger:MKMapTypeStandard], MKLaunchOptionsShowsTrafficKey:@YES;
[MKMapItem openMapsWithItems:mapItems launchOptions:options];
【讨论】:
以上是关于iOS 6 地图 - 找不到方向的主要内容,如果未能解决你的问题,请参考以下文章
带有 Angular 6 的 Mapbox。“找不到地图容器”错误
iOS:在地图上绘制 MKTileOverlay 导致 CPU 使用率和内存高。我找不到原因。?