如何使多个右栏按钮项在导航栏中垂直堆叠?

时间:2019-08-07 12:16:59

标签: ios swift xcode uinavigationbar uibarbuttonitem

如何将UIlabel添加到绿色区域? (它将在导航栏中)

enter image description here

我能够在rightBarButtonItem中将徽标添加为按钮图像,但是我无法通过谷歌搜索在此特定位置向导航栏添加标签的方法。

看完之后,我可能想创建一个包含徽标和UILabel的自定义视图,将它们垂直放置在该视图中,然后将该视图放置在rightBarButtonItem中?

edit:这是其他答案的一个独特问题,因为我正在寻找如何将UILabel添加到NavigationBar的“ rightBarButtonItem”区域之外的区域。使用rightBarButtonItem或设置自定义视图以显示在rightBarButtonItem中并不能实现我想要的功能。我希望UILabel出现在右侧的NavBar中,与“ Today”标题垂直对齐。

2 个答案:

答案 0 :(得分:0)

您可以按照以下代码片段进行操作:

let containerView = UIView()
...

let rightBarButton = UIBarButtonItem(customView: containerView)
navigationItem.rightBarButtonItem = rightBarButton

答案 1 :(得分:0)

我知道了!不知道为什么我的帖子被否决了,因为它显然是与其他帖子不同的问题,但是我离题了...

我最终弄清楚了在collectionView中使用自定义标头是解决问题的方法(而不是尝试通过将自定义UIView放置到rightBarButtonItem空间中来将UILabel放置在navigationBar中)。这对我有用,因为我希望标题和日期在滚动时仍然消失。基本上,这模仿了iOS App Store中的“今天”标签,而我的解决方案终于实现了我所寻找的目标。

Finished result.

这里有2条帮助我设置collectionView标头并附加标签的帖子:

  1. How to add UICollectionView Header

  2. Display Section Header UICollectionReusableView

感谢所有答复!