#iphone #google-maps #mapkit #mkmapview #mkannotation
#iPhone #google-карты #mapkit #mkmapview #mkannotation
Вопрос:
Я использую этот пример приложения для составления маршрута
Он вызовет API маршрутизации и проанализирует результат.
Затем над картой добавляется новый слой с маршрутом между A и B.
Моя проблема в том, как я могу разместить два цветных вывода? Прямо сейчас он показывает 2 красных цветных вывода. Но мне нужны 1 красный и 1 зеленый.
Я пытаюсь работать с этим делегатом, но это мне не помогает
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
Ответ №1:
- (MKAnnotationView *)mapView:(MKMapView *)mapView
viewForAnnotation:(id <MKAnnotation>)annotation {
if(annotation == yourFirstAnnotation)
{
MKPinAnnotationView *annView=[[MKPinAnnotationView alloc] initWithAnnotation:yourFirstAnnotation reuseIdentifier:[annotation title]];
annView.pinColor = MKPinAnnotationColorRed;
annView.animatesDrop=NO;
annView.canShowCallout = YES;
return [annView autorelease];
}
else
if(annotation == yourSecondAnnotation)
{
MKPinAnnotationView *annView=[[MKPinAnnotationView alloc] initWithAnnotation:yourSecondAnnotation reuseIdentifier:[annotation title]];
annView.pinColor = MKPinAnnotationColorGreen;
annView.animatesDrop=NO;
annView.canShowCallout = YES;
return [annView autorelease];
}
}
Я думаю, если это не сработает, используйте isEqual:
вместо ==
.