StackBarButtonItem
StackBarButtonItem可以像stackView一样使用BarButtonItem。
特点
- NavigationBar边距
- 视图之间的间距
- 反转视图
支持
- 设备:iPad | iPhone
- 方向:纵向 | 横向
- 多任务处理
要求
- Xcode10或更高版本
- iOS9或更高版本
- Swift4.2或更高版本
依赖项
安装
Carthage
如果您使用的是Carthage,只需将StackBarButtonItem添加到您的Cartfile
github "funzin/StackBarButtonItem"
CocoaPods
StackBarButtonItem可通过CocoaPods使用。安装时,只需将以下行添加到您的Podfile
pod 'StackBarButtonItem'
用法
对应表
位置 | 默认 | StackBarButtonItem |
---|---|---|
right | navigationItem.setRightBarButtonItems |
navigationItem.right.setStackBarButtonItems |
left | navigationItem.setLeftBarButtonItems |
navigationItem.left.setStackBarButtonItems |
介绍
iOS11或更高版本
如果iOS版本是iOS11或更高版本,您必须使用自动布局。
import StackBarButtonItem
・
・
・
// use autolayout
let rightButton = UIButton(frame: CGRect(x: 0, y: 0, width: 44, height: 44))
NSLayoutConstraint.activate([
rightButton.widthAnchor.constraint(equalToConstant: 44),
rightButton.heightAnchor.constraint(equalToConstant: 44)
])
self.navigationItem.right.setStackBarButtonItems(views: [rightButton])
iOS9 或 iOS10
如果iOS版本是iOS9或iOS10,您必须配置框架。
import StackBarButtonItem
・
・
・
// configure frame
let rightButton = UIButton(frame: CGRect(x: 0, y: 0, width: 44, height: 44))
self.navigationItem.right.setStackBarButtonItems(views: [rightButton])
边距
// e.g. set margin to 10
self.navigationItem.right.setStackBarButtonItems(views: [rightButton], margin: 10)
示例
边距 | 截图 |
---|---|
边距 == 0 |
![]() |
边距 == 10 |
![]() |
间距
// e.g. set spacing to 10
self.navigationItem.right.setStackBarButtonItems(views: [rightButton1, rightButton2], spacing: 10)
示例
间距 | 截图 |
---|---|
间距 == 0 |
![]() |
间距 == 10 |
![]() |
反转
// e.g. set reversed to true
self.navigationItem.right.setStackBarButtonItems(views: [rightButton1, rightButton2], reversed: true)
示例
反转 | 截图 |
---|---|
反转 == false |
![]() |
反转 == true |
![]() |
演示
如果您对 StackBarButtonItem 感兴趣,请在 carthage update
后检查演示。
作者
funzin, [email protected]
许可
StackBarButtonItem 以 MIT 许可证提供。更多信息请参阅 LICENSE 文件。