2013-02-13 2 views
0

Я пытаюсь просто установить заголовок элемента detailViewController на заголовок булавки после того, как будет обработан аксессуар вызова.Set ViewController Название из calloutAccessoryControlTapped

Вот где я установил MKAnnotation до:

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id 
<MKAnnotation>)annotation 
{ 
MKAnnotationView *annotationView = [[MKPinAnnotationView alloc] 
initWithAnnotation:annotation reuseIdentifier:@"loc"]; 

Вот где я хочу установить название контроллера подробный вид в названии Pin:

- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view  
calloutAccessoryControlTapped:(UIControl *)control 
{ 

DetailViewController *controller = [[DetailViewController alloc] initWithNibName:nil 
                      bundle:nil]; 
[self.navigationController pushViewController:controller animated:YES]; // or use  
presentViewController if you're using modals 

controller.title = pin.annotationView.subtitle; 

} 

Последняя строка - это то, что испортилось. Есть идеи? Спасибо вам всем!!

ответ

2

Фигурные его - заменил название контроллера с:

controller.title = view.annotation.title; 

Спасибо всем!

1
- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view  
calloutAccessoryControlTapped:(UIControl *)control 
{ 
MKAnnotation * annotation = (MKAnnotation *)annotation; 

DetailViewController *controller = [[DetailViewController alloc] initWithNibName:nil 
                      bundle:nil]; 
controller.title = annotation.subtitle; 

[self.navigationController pushViewController:controller animated:YES]; // or use  
presentViewController if you're using modals 

} 

Приведенный выше код работает отлично для меня Mr.Brandon

Смежные вопросы