Проблема с размещением кнопки внутри MKAnnotationView - PullRequest
0 голосов
/ 28 сентября 2011

Я пытаюсь поместить маленькую кнопку в свои AnnotationViews, чтобы показать некоторую информацию о некоторых местах на карте.Звучит супер просто?Что ж.Должно быть, я тогда идиот ...

Я просмотрел несколько примеров, обыскал весь интернет, и у меня порвали 95% волос.Это просто не работает!

-(MKAnnotationView *)mapView:(MKMapView *)theMapView viewForAnnotation:(id <MKAnnotation>)theAnnotation;
{
    MKAnnotationView * annotationView = nil;

    if([theAnnotation class] == [MyAnnotation class])
    {
        annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:theAnnotation reuseIdentifier:@"annotation"];
        annotationView.canShowCallout = YES;
        annotationView.rightCalloutAccessoryView = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
        annotationView.enabled = YES;

    }
    return annotationView;
}

-(void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control;
{
    NSLog(@"push %@", control);
}

Может кто-нибудь сказать мне, почему calloutAccessoryControlTapped никогда не вызывается?Я получаю красивую и красивую аннотацию, но когда я нажимаю синюю кнопку, она просто закрывается.Я попытался добавить цель к кнопке, ничего.

Пожалуйста, помогите мне!

PS: я знаю, что должен повторно использовать старый вид аннотации и прочее, но я удалил весь код, который не былнужно быть уверенным, что не было чего-то еще, что облажалось.

1 Ответ

0 голосов
/ 28 сентября 2011

Убедитесь, что вы правильно установили delegate в ответ на MKMapViewDelegate Protocol.

Кроме того, убедитесь, что для всех представлений и суперпредставлений userInterActionEnabled установлено значение YES.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...