Как локализовать «Таймер» на iPhone

Мне нужно отобразить таймер в формате «чч: мм: сс» на iPhone, но я хочу его локализовать. Финляндия, например, использует точку вместо двоеточия между компонентами времени (чч.мм.сс). Яблоко' s NSDateFormatter сработал бы, если бы я имел дело с "временем", но мне нужно отображать часы, намного превышающие 24.

Я не смог заставить работать NSDate / NSDateFormatter, потому что когда вы создаете его с секундами ... .

NSDate *aDate = [NSDate dateWithTimeIntervalSinceReferenceDate:aTotalSeconds];

... каждые 86 400 секунд (на один день) NSDate автоматически увеличивает день, а часы, минуты и секунды возвращаются к нулю. Мне нужно заставить его работать любое количество секунд без переворачивания. Например, при 86 401 секунде я хочу отобразить 24:00:01 (или 24.00.01 в Финляндии).

Мой код отлично справляется с общим количеством секунд, поэтому единственная проблема, с которой я столкнулся, - это отображение. Простой ...

[NSString stringWithFormat:@"%d%@%d%@%d", hours, sepString, mins, sepString, secs]

... работал бы, если бы я мог найти способ получить локализованную "sepString" (разделитель компонентов времени). В NSLocale этого, похоже, нет.

Мысли?

8
задан Swany 7 November 2010 в 02:34
поделиться