【问题标题】:Is it possible to format dateComponent to display as hh:mm:ss?是否可以格式化 dateComponent 以显示为 hh:mm:ss?
【发布时间】:2017-11-12 13:25:50
【问题描述】:

我正在尝试以 hh:mm:ss 格式显示倒计时,但由于我输出的不是日期而是 dateComponents,所以我不能使用 formatter.dateFormat。是否可以格式化 dateComponents?

目前我得到的输出如下所示:

时:5,分:12,秒:45

func nextEventCalculator() -> DateComponents {
    let now = Date()
    let calendar = Calendar.current
    let components = DateComponents(calendar: calendar, hour: 12, minute: 15)  // <- 12:15 pm
    let nextEvent = calendar.nextDate(after: now, matching: components, matchingPolicy: .nextTime)!

    let diff = calendar.dateComponents([.hour, .minute, .second], from: now, to: nextEvent)
    dateCountdownLabel.text = "\(diff)"
    return diff
}

【问题讨论】:

    标签: ios swift date time nsdate


    【解决方案1】:

    使用DateComponentsFormatterunitsStyle.positional

    let formatter = DateComponentsFormatter()
    formatter.unitsStyle = .positional
    dateCountdownLabel.text = formatter.string(from: diff)
    

    【讨论】:

      猜你喜欢
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多