2010-08-15 2 views
1

У меня есть простой проект, основанный на типе проекта «Навигационное приложение». RootViewController имеет список строк с именами для контактов и кнопку, которая должна отображать их на странице сведений о контакте с помощью ABPersonViewController.ABPersonViewController ... no back button

У меня все работающие крючки, и я показываю правильный ABPersonViewController, нажимая его на стек навигации ... но у него нет кнопки «Назад»! Приложение застревает, потому что нет способа вернуться к моему приложению. Как включить кнопку «Назад»? Поблагодарили бы за помощь.

Вот соответствующий код:

- (void) nameButtonClicked: (id) sender 
{ 
    UIButton *button = (UIButton *) sender; 
    NSLog(@"name button clicked... record_id = %i", button.tag); 
    ABRecordRef contact_data = ABAddressBookGetPersonWithRecordID(address_book, button.tag); 

    ABPersonViewController *ab = [[ABPersonViewController alloc] init]; 
    [ab setPersonViewDelegate:self]; 
    [ab setDisplayedPerson:contact_data]; 
    ab.allowsEditing = YES; 
    [self.navigationController pushViewController:ab animated:YES]; 
    [ab release]; 
} 

ответ

2

, если вы не можете найти систему обратно кнопку, вы всегда можете создать самостоятельно.

- (void) nameButtonClicked: (id) sender 
{ 
UIButton *button = (UIButton *) sender; 
NSLog(@"name button clicked... record_id = %i", button.tag); 
ABRecordRef contact_data = ABAddressBookGetPersonWithRecordID(address_book, button.tag); 

ABPersonViewController *ab = [[ABPersonViewController alloc] init]; 
ab.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"Back",nil) style:UIBarButtonItemStyleDone target:self action:@selector(ReturnFromPersonView)]; 
[ab setPersonViewDelegate:self]; 
[ab setDisplayedPerson:contact_data]; 
ab.allowsEditing = YES; 
[self.navigationController pushViewController:ab animated:YES]; 
[ab release]; 
} 

- (void)ReturnFromPersonView{ 
[self.navigationController popViewControllerAnimated:YES]; 
} 

удачи =]

btw-, если вы не любите «сделано» стиль кнопки, вы всегда можете использовать пользовательский стиль для кнопки со стрелкой назад, как внешний вид.