TV操作系统中日期选择器的替换



UIDate选择器在TVOS中不可用。如何选择日期和时间有没有其他选择日期和日期的方法。

这个答案集中在Swift上——然而,Objective-C中也有类似的方法

由于苹果没有为tvOS提供日期选择器,因此没有标准的解决方案。

然而,一些可能的步骤是:

  1. 设计并实现用于操作日期组件(=年、月、日、小时、分钟)的UI
  2. 跟踪当前选定的日期,例如使用存储的属性。日期标签可以使用属性观测器进行更新(例如。didSet
  3. 实现用于逐个组件地操作所选日期的方法,并将它们连接到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)的链接,不过,其他解决方案也是可能的。

具有分段控件的用户界面。

在我的例子中,日期选择器是在选择输入表单中的表视图单元格后以模式显示的。

相关内容

  • 没有找到相关文章

最新更新