是否可以为 UIDatePicker.Mode 编写 Swift 扩展
Is it possible to write a Swift Extension for UIDatePicker.Mode
从 Apple documentation 开始,UIDatePicker.Mode
是 Int
类型的 enum
,有四种情况。
enum Mode : Int
case time
case date
case dateAndTime
case countDownTimer
我很想知道我是否可以添加第五个 case monthYear
(= 4) 以使我能够创建 UIDatePicker 的自定义实现。
第五种情况的目的是在选择器控件中仅显示月份和年份滚轴。
(请注意,我知道我可以 - 并且很可能会 - 创建一个自定义 UIPickerView
来处理这个问题,但是我很想知道我是否可以优雅地扩展 UIDatePicker
class 或 UIDatePicker.Mode
枚举来实现这一点。)
我阅读了一些有关为 enum
编写 extension
的资料。我阅读了一些有趣的文章并回顾了一些 Stack Overflow 问答,其中包括有效的解决方法...
How to add more cases for enum in swift
Why Choose Struct Over Class?
所以以我的愚见,为了能够巧妙地扩展 UIDatePicker
,我首先需要能够扩展 UIDatePicker.Mode
.
我还阅读了 Apple documentation 标题下的 外观...
The appearance of UIDatePicker is not customizable.
这对我来说似乎相当确定,但是问这个问题也没什么坏处...
是否可以为 UIDatePicker.Mode
编写一个 Swift 扩展,以便我可以添加第五个 case monthYear
和 UIDatePicker
以便我可以编写自定义实现在控件中只显示月份和年份滚轮?
不,您不能修改 UIDatePicker
的功能以支持您自己的自定义模式。
您需要使用 UIPickerView
实现您自己的自定义日期选择器,或者找到已经这样做的第 3 方组件。
从 Apple documentation 开始,UIDatePicker.Mode
是 Int
类型的 enum
,有四种情况。
enum Mode : Int
case time
case date
case dateAndTime
case countDownTimer
我很想知道我是否可以添加第五个 case monthYear
(= 4) 以使我能够创建 UIDatePicker 的自定义实现。
第五种情况的目的是在选择器控件中仅显示月份和年份滚轴。
(请注意,我知道我可以 - 并且很可能会 - 创建一个自定义 UIPickerView
来处理这个问题,但是我很想知道我是否可以优雅地扩展 UIDatePicker
class 或 UIDatePicker.Mode
枚举来实现这一点。)
我阅读了一些有关为 enum
编写 extension
的资料。我阅读了一些有趣的文章并回顾了一些 Stack Overflow 问答,其中包括有效的解决方法...
How to add more cases for enum in swift
Why Choose Struct Over Class?
所以以我的愚见,为了能够巧妙地扩展 UIDatePicker
,我首先需要能够扩展 UIDatePicker.Mode
.
我还阅读了 Apple documentation 标题下的 外观...
The appearance of UIDatePicker is not customizable.
这对我来说似乎相当确定,但是问这个问题也没什么坏处...
是否可以为 UIDatePicker.Mode
编写一个 Swift 扩展,以便我可以添加第五个 case monthYear
和 UIDatePicker
以便我可以编写自定义实现在控件中只显示月份和年份滚轮?
不,您不能修改 UIDatePicker
的功能以支持您自己的自定义模式。
您需要使用 UIPickerView
实现您自己的自定义日期选择器,或者找到已经这样做的第 3 方组件。