我的iOS应用使用MKDirectionsRequest
查找源位置和目标位置之间的路径。目的地位置是“固定的”。它是荷兰的Leiden Centraal Raylway Station。
有两种情况:
1)我为“Leiden Centraal”查询启动MKLocalSearchRequest
并获取MKMapItem
。然后我将此MKMapItem
用作MKDirectionsRequest
中的目的地。返回的路径很好:
2)我使用
手动创建目的地MKMapItem
MKPlacemark *placemark = [[MKPlacemark alloc] initWithCoordinate:coord addressDictionary:dict];
mapItem = [[MKMapItem alloc] initWithPlacemark:placemark];
coord
与方案1中返回给我的MKLocalSearchRequest
完全相同。
字典dict
包含密钥@"CNPostalAddressStreetKey"
等
返回的路径也通往莱顿站。但这是错误的,因为它通过一条似乎只用于交付的街道。它甚至不存在于Google地图上的街道上:
那么我做错了什么?如何创建目标MKMapItem
以便返回的路径是正确的?或者也许可以序列化MKMapItem
返回的“正确”MKLocalSearchRequest
以便将来使用它?
答案 0 :(得分:0)
你可以尝试传递nil而不是地址字典吗?
MKPlacemark *placemark = [[MKPlacemark alloc] initWithCoordinate:coord addressDictionary:nil];
mapItem = [[MKMapItem alloc] initWithPlacemark:placemark];