Скрыть кнопку панели (слева и справа) от другого ViewController?
У меня два ViewController от первого я добавил две кнопки панели во второй ViewController. код здесь
self.navigationItem.leftBarButtonItem =
[[[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemCancel
target:self
action:@selector(backBtnAction)] autorelease];
self.navigationItem.rightBarButtonItem =
[[[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemDone
target:callListViewCtrObj
action:@selector(saveListNameAction)] autorelease];
self.navigationItem.rightBarButtonItem.tintColor = [UIColor blueColor];`
Теперь я хочу удалить эти две кнопки, когда нажата кнопка "Готово" (т.е. вызывается saveListNameAction из callListViewCtrObj, см. Код выше), я пробовал вот так: homeViewCtrObj.navigationItem.leftBarButtonItem = nil;
homeViewCtrObj.navigationItem.rightBarButtonItem =nil;
где homeViewCtrObj - это объект первого контроллера представления.
Любое предложение или пример кода будут оценены. Благодарю.
2 ответа
В CallListViewCtr создать свойство для HomeViewCtr
@property (nonatomic, assign) HomeViewCtr *homeView;
Теперь, когда вы нажимаете это представление, убедитесь, что присвоили вновь созданный viewController этому свойству.
self.homeView = theNewViewControllerImAboutToPush;
Теперь вы можете использовать
self.homeView.navigatioItem.leftBarButtonItem = nil;
self.homeView.navigatioItem.rightBarButtonItem = nil;
Я думаю, что вы захотите установить homeView на ноль, когда вы закончите.
Пытаться
self.navigationItem.leftBarButtonItem = nil;
self.navigationItem.rightBarButtonItem = nil;