导航栏上添加了一个按钮,该按钮显示在所有屏幕上。我需要从所有屏幕上隐藏它,除了一个

Posted

技术标签:

【中文标题】导航栏上添加了一个按钮,该按钮显示在所有屏幕上。我需要从所有屏幕上隐藏它,除了一个【英文标题】:A button is added to the navigation bar which is shown on all the screens. I need to hide it from all screens except one 【发布时间】:2011-10-11 15:55:08 【问题描述】:

在我的 iPad 应用程序中,我首先有一个欢迎屏幕,然后是主屏幕,然后主屏幕导航到其余屏幕。我在主屏幕的导航栏上制作了一个按钮,将用户带回欢迎屏幕。但是该按钮也显示在所有其他屏幕上。我想从所有屏幕中删除该按钮并仅在主屏幕中显示它。如何从所有其他屏幕中隐藏该按钮并使其仅在主屏幕上可见?

感谢电脑

【问题讨论】:

您认为也许您应该接受一些已经给出的答案?这样你会得到更多帮助。 【参考方案1】:

viewDidDisappear:

self.navigationItem.rightBarButtonItem = nil; 
// or on whichever side your button is

viewWillAppear:

self.navigationItem.rightBarButtonItem = self.showWelcomeButton; 
// self.showWelcomeButton is a retained UIBarButtonItem property

【讨论】:

嗨 Mundi,它不能这样工作。 viewDidDisappear 方法工作正常,但在 viewWillAppear 中出现以下错误:“请求成员 'showInfoButton' 不是结构或联合”。还有其他方法吗? 确保showInfoButton被保留(添加到navigationItem后不要释放)。更好的是,将其设为视图控制器的 @property。

以上是关于导航栏上添加了一个按钮,该按钮显示在所有屏幕上。我需要从所有屏幕上隐藏它,除了一个的主要内容,如果未能解决你的问题,请参考以下文章

如何在导航栏上为单个视图上的不同按钮设置标题?

如何在导航栏上设置常用栏按钮项

在带有搜索按钮的导航栏上添加 searchDisplayController.displaySearchBarInNavigationBar

如何在导航栏上添加侧菜单关闭按钮

隐藏标签栏上的覆盖按钮

如何在swift 4中的导航栏上添加图像后退按钮