测试已测试 | ✗ |
Lang语言 | SwiftSwift |
许可协议 | MIT |
发布最后发布 | 2017 年 8 月 |
SwiftSwift 版本 | 3.0.2 |
SPM支持 SPM | ✗ |
由 Chad 维护。
一个简单的 UITableViewController 子类,其行为类似于 melodeon。
继承 MelodeonController
并像在正常的 UITableViewController
上一样实现它。
class TableViewController: MelodeonController {
var firstList = ["Option One", "Option Two", "Option Three"]
var secondList = ["Choice One", "Choice Two", "Choice Three", "Choice Four" ]
var thirdList = ["Element One", "Element Two"]
...
.....
}
以数组形式提供您的分区,并重写 sections
属性。
override var sections:[Any] {
return ["List A", "List B", "List C"]
}
并提供每个分区的行数(这是必须的)。
override func numberOfRows(inSection section:Int) -> Int {
switch section {
case 0:
return firstList.count
case 1:
return secondList.count
case 2:
return thirdList.count
default:
return 0
}
}
可选
只要它是类型 MelodeonHeaderCell
,您就可以实现自己的头部单元格。
override var headerClasses:[MelodeonHeaderCell.Type]? {
return [TableHeaderCell.self, AnotherHeaderCell.self]
}
您还可以提供在视图加载时将展开的分区。
override var initialExpandedSection: Int {
return 0
}
您可以控制哪个头部是可交互的。
override func header(_ header: MelodeonHeaderCell, shouldTapAtSection section: Int) -> Bool {
if section == 1 {
return false
}
return true
}
或处理触摸事件。
override func header(_ header: MelodeonHeaderCell, didTapAtSection section: Int) {
// TODO: Implement header tap event here
}
要运行示例项目,首先克隆仓库,然后从 Example 目录运行 pod install
。
Melodeon 可以通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile。
pod "Melodeon"
Chad Lee,[email protected]
Melodeon 根据 MIT 许可协议提供。有关更多信息,请参阅 LICENSE 文件。