Я хочу перейти от минут как int
(например, 92) к строке 1:32
. Есть ли причудливый способ сделать это, используя objc
, или я застрял в том, чтобы выяснить, как это делается старомодным способом?ios минуты до времени
ответ
Я не верю, что есть функция для этого, но это достаточно просто, чтобы сделать это самостоятельно.
int hour = minutes/60;
int min = minutes % 60;
NSString *timeString = [NSString stringWithFormat: %@"%d:%02d", hour, min];
«02» проложит результаты, чтобы всегда было две цифры в месте минут. Может быть полезно посмотреть на NSDate Class Reference, так как это может сэкономить ваше время, если вы хотите сделать расчеты по результату.
Я думаю, что вы можете найти ответ здесь: NSTimeInterval to NSDate
int
вы говорите должны быть NSTimeInterval
(то есть просто double
), преобразовать его в NSDate
объект, а затем отформатировать его с помощью NSDateFormatter
с: HH:mm
.
Это может также может быть более полезным, «расширить» с использованием категорий NSDate объекта
@interface NSDate (Minutes)
и поставить там метод преобразования минут HH: мм (может быть, может быть лучше, чтобы переместить строку формата в качестве параметра метода) поэтому вам больше не нужно об этом думать.
Не быть циничным, но отличным началом было бы прочитать документацию, встроенную в Xcode. Это очень хороший ресурс. – Zak