从另一个ViewController隐藏栏按钮(左右两侧)?

时间:2012-09-07 14:12:50

标签: objective-c ios uinavigationitem

我有两个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];` 

现在我想在点击完成按钮时删除这两个按钮(即调用callListViewCtrObj的saveListNameAction,参见上面的代码),我试过这样 - homeViewCtrObj.navigationItem.leftBarButtonItem = nil; homeViewCtrObj.navigationItem.rightBarButtonItem =nil; homeViewCtrObj是第一个视图控制器的对象。

任何建议或示例代码将不胜感激。 感谢。

2 个答案:

答案 0 :(得分:2)

尝试

self.navigationItem.leftBarButtonItem = nil;
self.navigationItem.rightBarButtonItem = nil;

答案 1 :(得分:2)

在CallListViewCtr中为HomeViewCtr

创建一个属性
@property (nonatomic, assign) HomeViewCtr *homeView;

现在,当您按下此视图时,请确保将新创建的viewController分配给此属性。

self.homeView = theNewViewControllerImAboutToPush;

现在你可以使用

self.homeView.navigatioItem.leftBarButtonItem = nil;
self.homeView.navigatioItem.rightBarButtonItem = nil;

我认为你完成后你会想把homeView设置为nil。