DatePicker
适用于 iOS 10 及以上版本的 DatePicker
- 支持 iPad 和 iPhone
- 支持暗黑模式
- 可以自定义颜色
安装
DatePicker 通过 CocoaPods 提供。要安装,只需在 Podfile 中添加以下行
pod 'DatePicker', '~> 1.3.0'
快速使用
import DatePicker
class ViewController: UIViewController {
@IBAction func DateButton(_ sender: UIButton) {
let minDate = DatePickerHelper.shared.dateFrom(day: 18, month: 08, year: 1990)!
let maxDate = DatePickerHelper.shared.dateFrom(day: 18, month: 08, year: 2030)!
let today = Date()
// Create picker object
let datePicker = DatePicker()
// Setup
datePicker.setup(beginWith: today, min: minDate, max: maxDate) { (selected, date) in
if selected, let selectedDate = date {
print(selectedDate.string())
} else {
print("Cancelled")
}
}
// Display
datePicker.show(in: self, on: sender)
}
}
详细使用
- 导入库
import UIKit
import DatePicker
class ViewController: UIViewController {
}
- 配置
有几种方式来配置 DatePicker
- 基本 - 选择从今天起100年之内的日期
let datePicker = DatePicker()
datePicker.setup { (selected, date) in
if selected, let selectedDate = date {
print("\(selectedDate)"
} else {
print("cancelled")
}
}
通过设置 beginWith
参数来设置初始选择
datePicker.setup(beginWith: Date()) { (selected, date) in
if selected, let selectedDate = date {
print(selectedDate.string())
} else {
print("Cancelled")
}
}
通过设置 beginWith
参数来设置初始选择
datePicker.setup(beginWith: Date()) { (selected, date) in
if selected, let selectedDate = date {
print(selectedDate.string())
} else {
print("Cancelled")
}
}
- 具有最小和最大日期的日期选择器
datePicker.setup(min: minDate, max: maxDate) { (selected, date) in
if selected, let selectedDate = date {
print("\(selectedDate)"
} else {
print("cancelled")
}
}
通过设置 beginWith
参数来设置初始选择
datePicker.setup(beginWith: Date(), min: minDate, max: maxDate) { (selected, date) in
if selected, let selectedDate = date {
print("\(selectedDate)"
} else {
print("cancelled")
}
}
通过设置 beginWith
参数来设置初始选择
datePicker.setup(beginWith: Date(), min: minDate, max: maxDate) { (selected, date) in
if selected, let selectedDate = date {
print("\(selectedDate)"
} else {
print("cancelled")
}
}
您还可以使用DatePickerHelper的函数来帮助生成日期
let minDate = DatePickerHelper.shared.dateFrom(day: 18, month: 08, year: 1990)
let maxDate = DatePickerHelper.shared.dateFrom(day: 18, month: 08, year: 2020)
- 无年份选择器:选择并返回日和月整数,独立于年份。
let datePicker = DatePicker()
datePicker.setupYearless { (selected, month, day) in
if selected, let day = day, let month = month {
print("selected \(month) \(day)")
// You can also use DatePickerHelper's functions:
// DatePickerHelper.shared.month(number: Int) will return the month string name
print("selected DatePickerHelper.shared.month(number: month) \(day)")
} else {
print("cancelled")
}
}
- 显示
- 屏幕中心
datePicker.display(in: self)
- 或作为弹出视图(用于iPad)
datePicker.displayPopOver(on: button, in: self)
版权
许可
DatePicker在MIT许可下可用。有关更多信息,请参阅LICENSE文件。