SRMonthPicker 类似于 UIDatePicker,但不包括天数。正如其名,它是一个完全本地化的月份选择器,允许用户选择月份和年份。非常适合输入信用卡到期日期或不需要天组件的情况。它旨在模仿 iOS 上的两个原生 UI 元素的样式、感觉和操作。
<input type="month" />
元素的月份选择器,遗憾的是,它无法通过任何原生控件或 UIDatePicker 的设置来暴露。SRMonthPicker 已在 iOS 7 及以上版本上进行了测试。它也应该能在 iOS 5-6 上运行,但已经有一段时间没有进行测试了。此软件根据 MIT 许可协议 进行许可。
将此项目包含到项目中最简单的方法是使用 CocoaPods。一旦将 CocoaPods 配置到您的项目,只需简单地将依赖添加到 Podfile
中。
platform :ios, "5.0"
pod "SRMonthPicker"
然后运行 pod install
以安装依赖项。
如果您没有使用依赖管理器,只需将此项目作为一个子模块克隆或从 SRMonthPicker
目录中下载类,并将其包含到您的项目中。请注意,此库使用 ARC,所以如果您的项目没有,您应该创建一个静态库。
如果您在使用 QuickDialog,您可能对 QMonthElement 感兴趣,它将这些月份选择器集成到您的 QuickDialog 表单中。对于其他表单框架(如 XLForm 和 FXForms)的集成也在开发中。
对于 Interface Builder(包括 Storyboard),只需在 Interface Builder 中拖出一个 UIPickerView
。在辅助编辑器下,将选择器的类设置为 SRMonthPicker
。如果您是用代码来构建界面,只需初始化一个 SRMonthPicker 实例并添加一个子视图即可。在 XCode 6 及以上版本中,您也可以直接从 Interface Builder 的属性检查器中修改月份选择器的某些属性。
您有属性可以显示年份,设置(和获取)选定的日期,以及设置最大和最小年份。
自版本 0.2.5 以来,有一个 SRMonthPickerDelegate
。这个代理提供了两个可选方法:
- (void)monthPickerWillChangeDate:(SRMonthPicker *)monthPicker
- (void)monthPickerDidChangeDate:(SRMonthPicker *)monthPicker
因为使用了内部的delegate
属性,您需要将您的代理分配给月选择器的monthPickerDelegate
属性。
一个展示许多功能的简单示例项目可以在Example
文件夹中看到。此外,头文件在AppleDoc格式中都有完全的文档说明 - 谢谢CocoaDocs,您可以在浏览器中查看完整的文档这里。
就像每个人说的那样,GitHub是关于社会编码的 - 我不仅仅是因为喜欢Git作为版本控制系统而选择使用它。请积极参与并使这个项目变得更好,或如果您发现任何问题没有正确工作,可以提交一个 issue。
正如页面上方所述,使用是在MIT许可证
下提供的。请参阅LICENSE
文件或任何类头以获取详细信息。