MKAnnonation Просмотреть проблему прослушивания

Я хочу перейти к следующему классу через нажатие на MKAnnotationView на MKMapView. Как я могу сделать это, пожалуйста, дайте пример кода для этого.

Я сделал этот код.. объяснил ниже..

- (void)mapView:(MKMapView *)mapView1 didSelectAnnotationView:(MKAnnotationView *)customAnnotationView
{
       //Here Push to another view controller
}

Одна проблема заключается в том, что при нажатии на один элемент этот метод вызывает и он перейдет к другому классу, но когда я вернусь и снова нажму на тот же элемент, этот метод не вызывается.

Пожалуйста, помогите мне решить эту проблему...

Заранее спасибо...

1 ответ

Решение

Вам необходимо реализовать этот метод:

отредактирован:-

вам нужно реализовать следующий метод.

 - (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view
{
    NSLog(@"touch");
    [mapView deselectAnnotation:view animated:NO];
    firstVC *aa=[[[firstVC alloc]initWithNibName:@"firstVC" bundle:nil] autorelease];
    [[self navigationController] pushViewController:aa animated:YES];

}

 -(void)mapView:(MKMapView *)mapView didDeselectAnnotationView:(MKAnnotationView *)view
{
    NSLog(@"notouch");
    firstVC *aa=[[[firstVC alloc]initWithNibName:@"firstVC" bundle:nil] autorelease];
    [[self navigationController] pushViewController:aa animated:YES];

}

предыдущая:-

- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control
{    
    CompanyDetail  *detail = [[CompanyDetail alloc] initWithNibName:@"CompanyDetail" bundle:nil];       
    [self.navigationController pushViewController:detail animated:YES]; 
}

Make sure you do 

UIButton* rightButton = [UIButton buttonWithType:UIButtonTypeDetailDisclosure]; 

в вашем - (MKAnnotationView *) mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>) annotation метод

Другие вопросы по тегам