描述
AirBar 是一个用于创建酷炫可展开菜单的库。该库会观察 UIScrollView 的滚动,并为你提供可以应用到 UI 元素的状态。
演示
安装
库支持 Carthage 依赖管理器。为了安装 AirBar,将以下行添加到项目根目录的 Cartfile 中。
github "uptechteam/AirBar" ~> 2.0
如何使用
-
使用
BarController(configuration Configuration, stateObserver: StateObserver)初始化器创建BarController对象,其中Configuration是一个包含高度配置的结构体,StateObserver是在状态更改时将被调用的闭包。 -
使用
set(scrollView: UIScrollView)方法将BarController绑定到您的UIScrollView对象。 -
在作为
StateObserver初始化参数传递的闭包中提供 UI 变换。闭包将接收State对象,该对象具有以下公共方法
height()- 返回栏的高度;transitionProgress()- 返回栏的过渡进度,介于 0 和 2 之间,其中 0 - 紧凑状态,1 - 正常状态,2 - 展开状态;value(compactNormalRange: ValueRangeType, normalExpandedRange: ValueRangeType)- 返回用于配置 UIKit 元素属性的转换后 CGFloat 值。ValueRangeType是一个枚举,包含.range(CGFloat, CGFloat)和.value(CGFloat)两种情况。例如,如果您需要在常规-扩展转换中使用静态值1,在紧凑-常规转换时使用范围(0, 1)。
- (可选)向仓库贡献。
您还可以在库项目中找到示例应用程序。
多个 UIScrollView 对象
BarController 支持使用多个 UIScrollView 对象。您可以使用 preconfigure(scrollView: UIScrollView) 方法在通过 set(scrollView: UIScrollView) 方法设置之前配置滚动视图。
待办事项
- 实现扩展/连接抵抗;
- ...

