从Apple documentation,UIDatePicker.Mode
是enum
类型的Int
有四个案例。
enum Mode : Int
case time
case date
case dateAndTime
case countDownTimer
我很想知道是否可以添加第五个case monthYear
(= 4)以使我能够创建UIDatePicker的自定义实现。
第五种情况的目的是仅显示拾取器控制中的月份和年份滚子。
(请注意,我知道我可以 - 并且可能会 - 创建一个自定义UIPickerView
来处理这个,但我很想知道我是否可以优雅地扩展UIDatePicker
类或UIDatePicker.Mode
枚举来实现这一点。)
我做了一些关于为extension
写一个enum
的阅读。我已经阅读了一些有趣的文章,并回顾了一些包含功能解决方案的Stack Overflow Q&A ......
所以在我看来,为了能够整齐地扩展UIDatePicker
,我需要首先能够扩展UIDatePicker.Mode
。
我还在标题外观下的Apple documentation中读到...
UIDatePicker的外观不可自定义。
这对我来说似乎是相当明确的,但问这个问题并没有什么坏处......
是否可以为UIDatePicker.Mode
编写一个Swift扩展,以便我可以添加第五个case monthYear
和UIDatePicker
,这样我就可以编写一个自定义实现,只显示控件中的月份和年份滚轮?
不,您无法修改UIDatePicker
的功能以支持您自己的自定义模式。
您需要使用UIPickerView
实现自己的自定义日期选择器,或者找到已经这样做的第三方组件。