【发布时间】:2017-10-25 09:48:19
【问题描述】:
我在 tableView 上有一个过滤器,它有一个“从”和“到”月份选择。
月份选择,我的意思是,当我选择月份时,datePicker 应该只显示月份年份。该列表应包含从今天开始的最近 12 个月。
我查看了默认的 UIDatePicker,但意识到不可能只获得月-年。 (Reference answer from SO)
进一步看,我发现this link 有一个自定义的月份-年份选择器,但它显示未来 15 年。而且,在选择任何行时,什么都不会发生。
有人可以帮我定制它以显示从今天开始的过去 12 个月并在选择时获取结果吗?
【问题讨论】:
-
如果您的选择器应该只包含 12 个项目,请使用标准选择器并填充“2017 年 10 月”、“2017 年 9 月”等项目。
-
但我如何获得过去 12 个月的数据?只需要一些逻辑来计算这些东西吗?
-
• 使用
Calendar。 • 向后创建DateComponents(day: 1)和enumerateDates(startingAfter:matching:options:using:),直到达到项目数。 • 将带有DateFormatter的日期映射到字符串。 • 填充选择器 -
不好意思问了,你有例子吗?
-
应该先显示哪个月份?下个月应该向上还是向下滚动?
标签: ios swift uipickerview uidatepicker