UIBarButtonItem 没有出现

Posted

技术标签:

【中文标题】UIBarButtonItem 没有出现【英文标题】:UIBarButtonItem not appearing 【发布时间】:2013-07-21 14:07:43 【问题描述】:

我的应用布局如下-

rootViewController 是一个 tabViewController,有 3 个选项卡,每个选项卡都有一个 UINavigationController 作为它们的 rootViewController。在其中一个选项卡中,我将单元格选择推送到另一个现在有两个选项卡的 tabController。我想要做的是在这两个选项卡的 viewControllers 中的每一个上设置 rightBarButtonItem ......在我正在做的这两个的 viewDidLoad 方法中:

self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemEdit target:self action:@selector(selectionChanged:)];

但是这完全没有做任何事情!我从苹果文档中认为,您可以从导航控制器视图层次结构中的任何位置设置 navigationItem 的 rightBarButtonItem,但这里似乎并非如此。知道什么 - 如果有的话 - 我做错了吗?

【问题讨论】:

我不知道为什么它没有发生,但也许可以在 viewWillAppear 中尝试? 不,没有区别:/ 知道了...需要做self.tabBarController.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemEdit target:self action:@selector(selectionChanged:)]; 【参考方案1】:

解决这个问题的方法不是简单地在 self.navigationItem 上设置 rightBarButtonItem,我们需要像这样在父 tabBarController 上设置它:

self.tabBarController.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemEdit target:self action:@selector(selectionChanged:)];

【讨论】:

以上是关于UIBarButtonItem 没有出现的主要内容,如果未能解决你的问题,请参考以下文章

UIBarButtonItem 没有出现在 UIToolbar Swift 上

为 Bar 按钮项目和色调添加 Bg

UIToolbar Items 和 UIBarButtonItem 没有出现在模拟器中或被切断,我错过了啥吗?

添加到情节提要的 UIBarButtonItem 在运行时不会出现

带有customView的自动布局iOS 11工具栏UIBarButtonItem

UIBarButtonItem 的默认后退按钮背景图像出现在我的自定义