DroidTimeSelection
即将推出
- 完整的 Storyboard 支持。
- 添加 Swift Package manager 支持。
- 添加 Carthage 支持。
- 添加 smoother animations for mode transitions。
- 添加类似于原始 android selector 的 color-invert 效果。
概览
作为一名长期使用 Android 的用户,我发现我真的很怀念使用 Android 方法来选择时间。所以我把它带到了 iOS。
DroidTimeSelection 就是 Android 方式的选择时间。
它允许使用 时钟选择器 方式选择时间
或者 选择器(iOS 方式) 选择时间安装
DroidTimeSelection 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile 中
pod 'DroidTimeSelection'
使用方法
编程方式
首先,请确保在所有打算使用此功能的文件中导入"DroidTimeSelection"。
同时(两种方法)的菜单
创建菜单的实例
let menuMethod = DroidTimeSelection()
您还可以修改菜单的配置
menuMethod.config.timeFormat = .twelve
menuMethod.config.okButtonColor = .blue
//etc
您可以选择一个现有的时间(可以使用时间格式或小时、分钟、上午/下午形式的时间)
menuMethod.set(time: existingTime)
//or
menuMethod.set(hour: 0, minutes: 0, am: false)
要监听菜单事件,请访问以下闭包
menuMethod.onOkTapped = { [weak self] in
let value = menuMethod.value //the time selected
//Your code here.
}
menuMethod.onCancelTapped = { [weak self] in
//Your code here.
}
menuMethod.onSelectionChanged = { [weak self] value in
//Your code here
}
时钟选择
创建菜单的实例
let clockMethod = DroidClockSelector(frame: .zero)
通过绝对位置或自动布局将其放置在任何位置
您还可以修改菜单的配置
clockMethod.config.timeFormat = .twelve
clockMethod.config.timeColor = .blue
//etc
您可以选择一个现有的时间(可以使用时间格式或小时、分钟、上午/下午形式的时间)
clockMethod.set(time: existingTime)
//or
clockMethod.set(hour: 0, minutes: 0, am: false)
要监听菜单事件,请访问以下闭包
clockMethod.onSelectionChanged = { [weak self] value in
//Your code here
}
选择器选择
创建菜单的实例
let pickerMethod = DroidPickerSelector(frame: .zero)
通过绝对位置或自动布局将其放置在任何位置
您还可以修改菜单的配置
pickerMethod.config.timeFormat = .twelve
pickerMethod.config.timeColor = .blue
//etc
您可以选择一个现有的时间(可以使用时间格式或小时、分钟、上午/下午形式的时间)
pickerMethod.set(time: existingTime)
//or
pickerMethod.set(hour: 0, minutes: 0, am: false)
要监听菜单事件,请访问以下闭包
pickerMethod.onSelectionChanged = { [weak self] value in
//Your code here
}
Storyboard
即将推出。
自定义
您可以自定义以下方面
时钟选择器配置
largeSelectionFont: UIFont (default: .systemFont(ofSize: 18))
smallSelectionFont: UIFont (default: .systemFont(ofSize: 14))
largeSelectionColor: UIColor (default: .white)
smallSelectionColor: UIColor (default: .gray)
timeFont: UIFont (default: .systemFont(ofSize: 60))
amPmFont: UIFont (default: .systemFont(ofSize: 30))
timeColor: UIColor (default: .gray)
highlightedTimeColor: UIColor (default: .white)
selectionIndicatorColor: UIColor (default: .systemTeal)
selectionBackgroundColor: UIColor (default: .clear)
timeFormat: DroidTimeFormat (default: .twentyFour. Either .twentyFour or .twelve)
选择器选择配置
cancelButtonColor: UIColor (default: .white)
okButtonColor: UIColor (default: .white)
modeButtonColor: UIColor (default: .white)
okButtonText: String (default: "OK")
cancelButtonText: String (default: "CANCEL")
timeFormat: DroidTimeFormat (default: .twentyFour. Either .twentyFour or .twelve)
菜单选择器(两种方法)配置
titleFont: UIFont (default: .systemFont(ofSize: 26, weight: .bold))
titleColor: UIColor (default: .white)
pickerColor: UIColor (default: .white)
titleText: String (default: "Set Time")
timeFormat: DroidTimeFormat (default: .twentyFour)
示例
要运行示例项目,请克隆仓库,并首先从示例目录运行 pod install
。
需求
- iOS 11或更高。
作者
DDraiman1990,[email protected],又名Nexxmark Studio。
许可
DroidTimeSelection遵循MIT许可证。更多信息请参阅LICENSE文件。
致谢
图书馆的标志
原始图标由这些图标和Freepik混合制作而成,均来自www.flaticon.com。