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
метод