如何在不覆盖自然后退按钮的情况下添加左栏按钮?
How do I add a left bar button without overriding the natural back button?
我有一个使用嵌入在导航视图控制器中的 UIViewControllers 的项目,所以每当我进入我的 tableviews 的任何细节时,都会自动为我设置后退按钮。
现在我想在后退按钮旁边添加一个编辑按钮。我已经在右侧放置了一个取消分配按钮,并且由于单词 "Unassign" 很长,我宁愿将编辑按钮放在左侧的后退按钮旁边。
我知道我可以使用 navigationItem.leftBarButtonItem = editButton
以编程方式添加栏按钮,但这会覆盖后退按钮。
我也试过将 editButton 附加到 navigationItem.leftBarButtonItems
数组,但这也不起作用(因为 leftBarButtonItems 数组一开始就没有设置)。
我的下一个方法是找到后退按钮并手动将其添加到 leftBarButtonItems 数组,所以我尝试使用 navigationItem.leftBarButtonItems = [self.navigationItem.backBarButtonItem!, editButton]
,但这只会在 editButton 和左侧之间添加一个 space .没有后退按钮。
如何在不触及后退按钮的情况下添加左栏按钮?有没有比使用 self.navigationController?.popViewControllerAnimated(true)
手动编写新的后退按钮并将其添加到 leftBarButtonItems 数组更优雅的方法?
默认情况下,leftItemsSupplementBackButton
属性 为 false
。在这种情况下,
后退按钮未绘制,左侧项目或项目替换它。如果你
希望左边的项目出现在后退按钮之外(而不是它)设置 leftItemsSupplementBackButton
到 true
。
@property(nonatomic) BOOL leftItemsSupplementBackButton
你可以使用这样的东西
navigationItem.leftBarButtonItem = editButton
//or
navigationItem.leftBarButtonItems = [editButton]
self.navigationItem.leftItemsSupplementBackButton = true
这两行就可以了。将 leftItemSupplementBackButton
设置为 true,然后添加 leftBarButtonsItems
.
self.navigationItem.leftItemsSupplementBackButton = true
self.navigationItem.leftBarButtonItems = [barButton]
我有一个使用嵌入在导航视图控制器中的 UIViewControllers 的项目,所以每当我进入我的 tableviews 的任何细节时,都会自动为我设置后退按钮。
现在我想在后退按钮旁边添加一个编辑按钮。我已经在右侧放置了一个取消分配按钮,并且由于单词 "Unassign" 很长,我宁愿将编辑按钮放在左侧的后退按钮旁边。
我知道我可以使用 navigationItem.leftBarButtonItem = editButton
以编程方式添加栏按钮,但这会覆盖后退按钮。
我也试过将 editButton 附加到 navigationItem.leftBarButtonItems
数组,但这也不起作用(因为 leftBarButtonItems 数组一开始就没有设置)。
我的下一个方法是找到后退按钮并手动将其添加到 leftBarButtonItems 数组,所以我尝试使用 navigationItem.leftBarButtonItems = [self.navigationItem.backBarButtonItem!, editButton]
,但这只会在 editButton 和左侧之间添加一个 space .没有后退按钮。
如何在不触及后退按钮的情况下添加左栏按钮?有没有比使用 self.navigationController?.popViewControllerAnimated(true)
手动编写新的后退按钮并将其添加到 leftBarButtonItems 数组更优雅的方法?
默认情况下,leftItemsSupplementBackButton
属性 为 false
。在这种情况下,
后退按钮未绘制,左侧项目或项目替换它。如果你
希望左边的项目出现在后退按钮之外(而不是它)设置 leftItemsSupplementBackButton
到 true
。
@property(nonatomic) BOOL leftItemsSupplementBackButton
你可以使用这样的东西
navigationItem.leftBarButtonItem = editButton
//or
navigationItem.leftBarButtonItems = [editButton]
self.navigationItem.leftItemsSupplementBackButton = true
这两行就可以了。将 leftItemSupplementBackButton
设置为 true,然后添加 leftBarButtonsItems
.
self.navigationItem.leftItemsSupplementBackButton = true
self.navigationItem.leftBarButtonItems = [barButton]