是否可以为UIDatePicker.Mode编写Swift扩展

时间:2019-03-08 01:17:14

标签: swift enums uidatepicker swift-extensions

Apple documentation中,UIDatePicker.Modeenum类型的Int,有四种情况。

enum Mode : Int

case time
case date
case dateAndTime
case countDownTimer

我很想知道是否可以添加第五个case monthYear(= 4)以使我能够创建UIDatePicker的自定义实现。

第五种情况的目的是在选择器控件中仅显示月份和年份滚轴。

(请注意,我知道我可以并且可能会创建一个自定义UIPickerView来处理此问题,但是我很好奇我是否可以优雅地扩展UIDatePicker类或{{ 1}}枚举即可实现。)

我已经为将UIDatePicker.Mode编写了extension做过一些阅读。我已经阅读了一些有趣的文章,并回顾了一些Stack Overflow问答,其中包括有效的解决方法...

因此,以我的拙见,要能够巧妙地扩展enum,我首先需要能够扩展UIDatePicker

我还阅读了Apple documentation标题下的 ...

  

UIDatePicker的外观不可自定义。

这对我来说似乎是确定的,但是问这个问题并没有什么害处...

是否可以为UIDatePicker.Mode写一个Swift扩展,以便我可以为UIDatePicker.Mode添加第五个case monthYear,这样我可以写一个只显示月份和年份的自定义实现控制中的滚子?

1 个答案:

答案 0 :(得分:0)

否,您不能修改UIDatePicker的功能以支持自己的自定义模式。

您要么需要使用UIPickerView来实现自己的自定义日期选择器,要么需要找到已经这样做的第三方组件。