Как добавить кнопку редактирования на панели навигации для контроллера табличного просмотра, который не является корневым контроллером - PullRequest
0 голосов
/ 18 марта 2012

Я использую раскадровку.
У меня был UINavigationContrller в качестве начального контроллера просмотра. у него были отношения rootViewController с UIViewController. У UiViewController есть переходные сегменты до TabBarController. Первый выпуск TabBarController на TableViewController.

Я хочу добавить кнопку редактирования к TableViewController.

Я пытался использовать этот код: self.navigationItem.rightBarButtonItem = self.editButtonItem;
Но этот ряд просто игнорируется, и на панели навигации кнопка не отображается.

Я тоже пишу этот код: self.navigationController.navigationBarHidden = NO; self.navigationcontroller.navigationItem.hidesBackButton = YES;

Первое не игнорируется (панель навигации была скрыта от первого UIViewController), второе игнорируется, а кнопка остается.

1 Ответ

2 голосов
/ 18 марта 2012

Попробуйте добавить это к вашему контроллеру представления:

// When this view appears, add show the navigation bar and the edit button
- (void)viewDidAppear {
    [super viewDidLoad];
    self.navigationController.navigationBarHidden = NO; 
    self.navigationItem.hidesBackButton = YES;
    self.navigationItem.rightBarButtonItem = self.editButtonItem;
}

// When this view disappears, remove the editButton and hide the navigation bar
- (void)viewDidDisappear {
    self.navigationItem.rightBarButtonItem = nil;
    self.navigationController.navigationBarHidden = YES;
}
...