我想通过点击MKMapView上的MKAnnotationView导航到下一个类。我该怎么做plz为此提供一些示例代码。
我已经完成了这个代码..在下面解释..
- (void)mapView:(MKMapView *)mapView1 didSelectAnnotationView:(MKAnnotationView *)customAnnotationView
{
//Here Push to another view controller
}
一个问题是,当点击一个项目时,此方法会调用,它会导航到其他类,但是当我回来再次点击相同的项目时,此方法不会被调用。
请帮我解决这个问题...
提前致谢...
答案 0 :(得分:2)
您需要实现此方法: -
编辑: -
您需要实施以下方法。
- (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
方法