Пока моя программа может отображать базу данных пользовательских представлений аннотаций. В конце концов я хочу, чтобы моя программа могла отображать дополнительную информацию после нажатия кнопки на всплывающей подсказке. Каждый элемент в базе данных имеет уникальный номер записи, поэтому я подумал, что было бы неплохо добавить этот номер записи в качестве свойства пользовательской аннотации. У меня проблема в том, что после нажатия кнопки и перехода программы в новое представление я не могу получить номер записи выбранной аннотации.
Ниже приведен код, который присваивает аннотации свойство Number записи:
for (id mine in mines)
{
workingCoordinate.latitude = [[mine latitudeInitial] doubleValue];
workingCoordinate.longitude = [[mine longitudeInitial] doubleValue];
iProspectAnnotation *tempMine = [[iProspectAnnotation alloc] initWithCoordinate:workingCoordinate];
[tempMine setTitle:[mine mineName]];
[tempMine setAnnotationEntryNumber:[mine entryNumber]];
}
[mines dealloc];
Когда выбрана кнопка для аннотации, это код, который инициализирует новый вид:
- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control
{
mineInformationController *controller = [[mineInformationController alloc] initWithNibName:@"mineInformationController" bundle:nil];
controller.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self presentModalViewController:controller animated:YES];
[controller release];
}
и, наконец, моя попытка получить свойство entryNumber из нового представления, чтобы я мог сравнить его с базой данных mines и получить дополнительную информацию об элементе массива.
iProspectFresno_LiteAppDelegate *appDelegate = (iProspectFresno_LiteAppDelegate *)[[UIApplication sharedApplication] delegate];
NSMutableArray* mines = [[NSMutableArray alloc] initWithArray:(NSMutableArray *)appDelegate.mines];
for(id mine in mines)
{
if ([[mine entryNumber] isEqualToNumber: /*the entry Number of the selected annotation*/])
{
/* display the information in the mine object */
}
}
Итак, как мне получить доступ к этому свойству номера записи в этом новом контроллере представления?