测试已测试 | ✗ |
语言语言 | SwiftSwift |
许可证 | MIT |
发布最新版本 | 2014年12月 |
SPM支持 SPM | ✗ |
由 Juan-Carlos Méndez-García 维护。
这是一个用于在包含大量数据点(日期)的时间线中导航的 iOS 控件
以下代码展示了如何使用此控件。使用了常规的数据源/代理模式。
数据源需要实现 2 个函数:numberOfDates()
和 dateAtIndex()
。后者必须保证日期按升序排列。
class SampleData: JCMTimeSliderControlDataSource {
func numberOfDates() -> Int {
return data!.count
}
func dateAtIndex(index: Int) -> NSDate {
return data![index]
}
}
代理可选实现 hoveredOverDate
和 selectedDate
class ViewController: UIViewController, JCMTimeSliderControlDelegate {
@IBOutlet var timeControl1: JCMTimeSliderControl?
override func viewDidLoad() {
super.viewDidLoad()
timeControl1?.backgroundColor = UIColor.blackColor().colorWithAlphaComponent(0.4)
timeControl1?.dataSource = your_data_source
timeControl1?.delegate = self
timeControl1?.tag = 1
}
func hoveredOverDate(date: NSDate, index: Int, control: JCMTimeSliderControl) {
println("Hovered over control: \(control.tag) -> Date: \(date), loc: \(index)")
}
func selectedDate(date: NSDate, index: Int, control: JCMTimeSliderControl) {
println("Selected control: \(control.tag) -> Date: \(date), loc: \(index)")
}
}
需要大量调试。这是一个非常早期的实现。