UIDate选择器在TVOS中不可用。如何选择日期和时间有没有其他选择日期和日期的方法。
这个答案集中在Swift上——然而,Objective-C中也有类似的方法
由于苹果没有为tvOS提供日期选择器,因此没有标准的解决方案。
然而,一些可能的步骤是:
- 设计并实现用于操作日期组件(=年、月、日、小时、分钟)的UI
- 跟踪当前选定的日期,例如使用存储的属性。日期标签可以使用属性观测器进行更新(例如。
didSet
) - 实现用于逐个组件地操作所选日期的方法,并将它们连接到UI
请记住,日期和日期计算很复杂(!),因此请使用所提供的日期概念和方法-请参阅文档中的Calendar和DateComponents
。
在那里,你会发现有用的方法,例如:
-
range(of: Calendar.Component, in: Calendar.Component, for: Date)
可用于查找一年中的月数和一个月中的天数(等等)。 -
dateComponents(Set<Calendar.Component>, from: Date)
和date(from: DateComponents)
可用于将日期组件转换为日期组件反之亦然。 -
此外,
isValidDate(in: Calendar)
可用于检查该日期组件构成某个日历中的有效日期。
下面是我为我的应用程序开发的用户界面(带有UISegmentedControl
)的链接,不过,其他解决方案也是可能的。
具有分段控件的用户界面。
在我的例子中,日期选择器是在选择输入表单中的表视图单元格后以模式显示的。