Phonegap / Cordova + MapKit на iOS: выполнение функции javascript при касании булавки

Я использую Phonegap / Cordova и его плагин MapKit для создания приложения на основе HTML / javascript для iOS.

Я хотел бы выполнять функцию javascript при щелчке по булавке на карте, в идеале вместо того, чтобы булавка отображала аннотацию по умолчанию. (А также передача некоторых данных о том, какой штифт был нажат, я думаю, это идентификатор.)

Не похоже, что есть какие-либо функции типа обратного вызова для события касания булавки (на самом деле нет события касания булавки), только после того, как нажата кнопка типа дополнительной информации в аннотации.

Кто-нибудь знает, существует ли эта функция или как я могу ее добавить?


person Jason Rosenbaum    schedule 19.01.2013    source источник


Ответы (1)


Я ответил на свои вопросы - вот что я вставил в MapKit.m:

//when a pin is selected, do something
- (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view {
    NSString *annotationTapFunctionString = [NSString stringWithFormat:@"%s%@%s", "annotationTap('", [view.annotation title], "')"];
    [self.webView stringByEvaluatingJavaScriptFromString:annotationTapFunctionString];
}

При касании булавки вызывается функция javascript annotationTap с заголовком булавки в качестве аргумента.

person Jason Rosenbaum    schedule 21.01.2013