2015-08-04 1 views
-1

Все, что мне нужно сделать, это изменить способ отображения xcode моих значений. Мой код в настоящее время отображает возраст чего-то в минутах, например 4503 минуты. Я хочу иметь возможность отображать эти значения в следующем формате 3 дня 3 часа 3 мяты, а не 4503 мяты. Очень ценю вашу помощь. С наилучшими пожеланиямиКак отображать секунды в формате year, day в swift

+0

Пожалуйста, объясните свое требование более подробно. Может быть, вы можете привести пример того, чего вы пытаетесь достичь. Также - важно ли, если рассчитанный год - високосный год или нет? – Darko

+0

Спасибо за ваши ответы. Извините, если я не был достаточно ясен. Но медведь со мной, как ям ее новой. Все, что мне нужно сделать, это изменить способ отображения xcode моих значений. Мой код в настоящее время отображает возраст чего-то в минутах, например 4503 минуты. Я хочу иметь возможность отображать эти значения в следующем формате: 3 дня 3 часа 3 мяты, а не 4503 мяты. Очень ценю вашу помощь. С уважением – Mustafa

ответ

0

Вы сказали:

Мой код в настоящее время отображения возраста что-то в течение нескольких минут 4503mint например. Я хочу иметь возможность отображать эти значения в следующем формате 3 дня 3 часа 3 мяты, а не 4503 мяты.

Вы можете отформатировать его с помощью NSDateComponentsFormatter. Просто умножить количество минут на 60, чтобы получить NSTimeInterval, а затем вы можете поставить что форматер:

let formatter = NSDateComponentsFormatter() 
formatter.unitsStyle = .Full 

let minutes = 4503 
let timeInterval = NSTimeInterval(minutes * 60) 
print(formatter.stringFromTimeInterval(timeInterval)) 

Это будет производить «3 день, 3 часа, 3 минуты» (или в любом формате, соответствующем языковой стандарт для этого устройства).

Для получения дополнительной информации см. NSDateComponentsFormatter Reference.

+1

Спасибо, его работа. ваша помощь очень ценится. – Mustafa

0

Вы можете вычислить его самостоятельно (например, дни = секунды/(3600 * 24) и т. Д.), Вы также можете посмотреть NSDateComponentsFormatter, что может быть именно той функциональностью, которую вы ищете, практически без усилий по кодированию.

0

Вы можете рассчитать его самостоятельно или сделать что-то вроде этого:

let mySeconds = 700000 
let date = NSDate(timeIntervalSinceNow: mySeconds) // difference to now 
var dateFormatter = NSDateFormatter() 
dateFormatter.dateFormat = NSDateFormatter.dateFormatFromTemplate("yyyy.MM.dd", options: 0, locale:  NSLocale.currentLocale()) 
dateFormatter.stringFromDate(date) 
Смежные вопросы