Формат в MM:SS с использованием NSDateComponentsFormatter

Я пытаюсь отформатировать в MM:SS с помощью NSDateComponentsFormatter:

let formatter = NSDateComponentsFormatter()

formatter.zeroFormattingBehavior = .Pad
formatter.allowedUnits = .CalendarUnitMinute | .CalendarUnitSecond

let time: NSTimeInterval = 5
let timeText = formatter.stringFromTimeInterval(time)

Проблема в том, что, хотя я указал .Padрезультат 0:05 вместо 00:05,

Вот соответствующая часть из документации Apple:

static var Pad: NSDateComponentsFormatterZeroFormattingBehavior { get } 
// Off: "1:0:10", On: "01:00:10" 

Я пытался добавить .CalendarUnitHour просто попробовать и получил H:MM:SS вместо HH:MM:SS несмотря на то, что говорится в документации.

Как мне набрать самый первый номер, как показано в документации?

1 ответ

Решение

Извините за неправильный первоначальный ответ, нет возможности добавить ведущие нули к часам:

Если разрешены дни, часы, минуты и секунды, значение отображается как "0d 1:00:00", используя позиционный стиль, и как "0d 1h 0m 0s", используя сокращенный стиль.

Если вам просто нужно отформатировать NSTimeInterval в строку типа HH:MM:SS, проверьте этот ответ

Другие вопросы по тегам