DateTimePicker 2.5.3

DateTimePicker 2.5.3

测试已测试
语言语言 SwiftSwift
许可证 MIT
发行上次发布2021年3月
SPM支持 SPM

Huong Do 维护。




DateTimePicker

一个更友好的 iOS UI 组件,用于选择日期和时间。

功能

  • 日期和时间选择器/仅日期选择器/仅时间选择器 - 您的选择!
  • 限制选择日期在特定时间范围内
  • 显示或隐藏日期单元格上的月份
  • 时间无限滚动
  • 自定义颜色和日期格式
  • (v1.3) 基于约束的 UI
  • (v2.0) 现在您可以创建一个独立的视图作为选择器视图!
  • (v2.1.0)Carthage 现在得到了支持(抱歉有点晚)
  • (v2.3.0) 可以选择自定义字体和颜色
  • (v2.4.0) 显示秒数的选项
  • (v2.5.0) SPM 支持
  • 自定义时区和日历

待办事项(需要帮助!🎯)

  • 选择月份/年份的选项(需要 UI 灵感)

要求

  • Swift 5 & Xcode 12
  • 对于Swift 4.2,请使用分支 swift4.2
  • 对于Swift 4.1,请使用分支 swift4.1
  • 对于Swift 3.0,请使用版本 1.1.4
  • iOS 10及以后版本

安装

使用Cocoapod

只需将以下内容添加到您的 podfile

pod 'DateTimePicker'

使用Carthage

从v2.1.0开始,您可以通过在Cartfile中指定来使用Carthage将DateTimePicker整合到您的Xcode项目中。

github "itsmeichigo/DateTimePicker" ~> 2.1.0

运行carthage update来构建框架,并将构建的DateTimePicker.framework拖动到您的Xcode项目中。

使用Swift Package Manager

从v2.5.0开始,您可以通过SPM将DateTimePicker添加到您的项目中。在SPM配置窗口中粘贴此仓库的链接即可。

手动安装

将目录Source拖动到您的项目中。请确保更新nib文件的自定义类模块,以便从您的当前目标继承,以便可以找到自定义文件。

Screen Shot 2020-03-15 at 11 21 31 AM

Screen Shot 2020-03-15 at 11 37 20 AM

Screen Shot 2020-03-15 at 11 37 34 AM

演示

导航到名为 DateTimePickerDemo 的文件夹,运行 pod install 并打开工作区文件以与 DateTimePicker 进行交互。

用法

v2.0

从 v2.0 版本开始,可以单独创建选择器视图并将其添加到您想要的任何视图中。注意:选择器视图使用固定宽度和高度构建,因此不鼓励您手动更新它,否则会得到损坏的界面。如果需要,请只更改视图的 Y 位置。

let min = Date().addingTimeInterval(-60 * 60 * 24 * 4)
let max = Date().addingTimeInterval(60 * 60 * 24 * 4)
let picker = DateTimePicker.create(minimumDate: min, maximumDate: max)
picker.frame = CGRect(x: 0, y: 100, width: picker.frame.size.width, height: picker.frame.size.height)
self.view.addSubview(picker)

如果您仍然想使用旧的行为(类似于模态对话框显示选择器),可以调用 show 方法

let picker = DateTimePicker()
picker.show()

v1.3 及以下

对于旧版本,唯一的选择是使用内置的 show 方法,该方法返回一个 DateTimePicker 实例,并在顶层窗口上显示选择器,如同模态对话框。当点击取消按钮时,可以选择关闭选择器。

let picker = DateTimePicker.show()

自定义

有许多选项可以根据您的需求自定义选择器

  • minimumDatemaximumDate:选择器的日期和时间限制。您只能在创建选择器时设置这些参数,默认值为可用日期的前 10 天和后 10 天。如果您自行设置这些日期,请确保设置的最小日期早于最大日期。
  • selectedDate:选择器首次创建时选中的日期,默认为当前日期。选中的日期必须晚于 minimumDate 且早于 maximumDate
  • locale:显示的语言区域设置。默认为设备的区域设置。
  • dateFormat:选择器视图中显示的日期格式。默认为 HH:mm dd/MM/YYYY。
  • cancelButtonTitle:取消按钮的标题,默认为取消。
  • todayButtonTitle:重置时间按钮的标题,默认为今天。
  • doneButtonTitle:完成按钮的标题,默认为DONE。
  • is12HourFormat:是否显示12小时制时间,默认为false。
  • isDatePickerOnly:是否仅在选择器视图中显示日期,默认为false。
  • isTimePickerOnly:是否仅在选择器视图中显示时间,默认为false。
  • includesMonth:是否在日期单元格中包含月份,默认为false。
  • includesSecond:是否在时间选择中显示秒,默认为false。
  • timeInterval:时间间隔,以分钟为单位,默认为1。如果不使用默认值,则无限滚动关闭。
  • timeZone:选择器使用的时区,默认为设备时区。
  • dismissHandler:在选择器视图的取消按钮被点击时调用的回调块。
  • delegate:在选中新的日期或时间时,需要通知的对象。
  • highlightColor:自定义高亮颜色,默认为青色。
  • darkColor:自定义深色颜色,默认为灰色。
  • doneBackgroundColor:自定义“完成”按钮颜色,默认为深色颜色。
  • daysBackgroundColor:日期单元格的自定义背景颜色。
  • customFontSetting:组件中所有标签的自定义字体设置。

贡献

欢迎对错误修正或改进做出贡献。请随时提交pull请求。

许可证

DateTimePicker遵循MIT许可证。有关更多信息,请参阅LICENSE文件。