iPhone: addAnnotation не работает при вызове из другого зрения

голоса
0

У меня есть два вида, первый вид имеет MKMapView на его имени ridesMap. Второй вид это просто вид с UITableView в нем. При нажатии на кнопку сохранения во второй точки зрения, он вызывает метод с первого взгляда:

// Get my first views class
MyRidesMapViewController *rideMapView = [[MyRidesMapViewController alloc] init];
// Call the method from my first views class that removes an annotation
[rideMapView addAnno:newRidePlacemark.coordinate withTitle:rideTitle.text withSubTitle:address];

Это правильно вызывает метод addAnno, который выглядит как:

- (void)addAnno:(CLLocationCoordinate2D)anno withTitle:(NSString *)annoTitle withSubTitle:(NSString *)subTitle {

    Annotation *ano = [[[Annotation alloc] init] autorelease];

    ano.coordinate = anno;

    ano.title = annoTitle;

    ano.subtitle = subTitle;

    if ([ano conformsToProtocol:@protocol(MKAnnotation)]) {

        NSLog(@YES IT DOES!!!);

    }

    [ridesMap addAnnotation:ano];

}//end addAnno

Этот метод создает аннотацию, которая делает соответствовать MKAnnotation, и предполагает, чтобы добавить аннотацию к карте с помощью метода addAnnotation. Но, аннотация никогда не добавляется.

Я никогда не получить какую-либо ошибки, когда аннотации не добавляется. Но она никогда не появляется, когда вызывается метод.

Почему это? Кажется, что я сделал все правильно, и что я передаю правильно MKAnnotation к методу addAnnotation. Таким образом, я не понимаю, почему не его не падает булавку? Может быть потому, что я называю этот метод с другой точки зрения? Почему это случилось?

Задан 25/05/2010 в 06:20
источник пользователем
На других языках...                            


1 ответов

голоса
2

Вы создаете второй экземпляр MyRidesMapViewController. Вы должны добавлять аннотации к исходному экземпляру. Вы должны предоставить некоторые средства передачи этого экземпляра вашего второго вида. Есть много возможных способов сделать это; оптимальный выбор зависит от того, как структурировано ваше приложение (которое мы не знаем).

Ответил 25/05/2010 в 08:04
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more