在iOS-7中隐藏并显示左侧导航栏button

我使用故事板添加了左侧导航栏button。 但是当我第一次加载屏幕时,我希望它隐藏起来。 然后,为了回应其他的事情,我希望它显示。 导航栏有隐藏后退button的方法。 但是没有隐藏/显示左键的方法。 有没有一个简单的方法来做到这一点? 或者我必须使用两种方法:隐藏方法创build一个空的button和显示方法创build正确的button? 有问题的button只是iOS提供的Add模板(这使得使用故事板中的一个比创build自己的模板更容易)。

这是我如何解决它

 -(void) hideAndDisableRightNavigationItem { [self.navigationItem.rightBarButtonItem setTintColor:[UIColor clearColor]]; [self.navigationItem.rightBarButtonItem setEnabled:NO]; } -(void) showAndEnableRightNavigationItem { [self.navigationItem.rightBarButtonItem setTintColor:[UIColor blackColor]]; [self.navigationItem.rightBarButtonItem setEnabled:YES]; } 

@learner答案的快速版本

 func hideAndDisableRightNavigationItem (){ self.navigationItem.rightBarButtonItem?.enabled = false self.navigationItem.rightBarButtonItem?.tintColor = UIColor.clearColor() } func showAndEnableRightNavigationItem(){ self.navigationItem.rightBarButtonItem?.enabled = true self.navigationItem.rightBarButtonItem?.tintColor = UIColor. blackColor() } 

这是我做的。 在初始屏幕上,我想隐藏导航栏:

  self.navigationController.navigationBarHidden = YES; 

在第二个屏幕上,我想显示导航栏,所以我设置:

  self.navigationController.navigationBarHidden = NO;