请允许任何人帮助我,我希望显示以下内容:
for (int i = 0; i < [highScores count]; i++)
{
[scoresString appendFormat:@"%i. %i\n", i + 1, [[highScores objectAtIndex:i] intValue]];
}
作为此格式的时间值 00:00:00 (以分钟秒和百分之一秒为单位)。目前我正在获取 7008 等值(请注意,我的最长时间以秒为单位定义为 * #define MAX_TIME 7200 * )。
请如何进行此转换。
答案 0 :(得分:2)
正如X Slash所述,如果您的整数以秒为单位,那么您无法获得百分之一秒,但要将其转换为分钟和秒,请执行以下操作:
int total = [[highScores objectAtIndex:i] intValue];
int minutes = total / 60;
int seconds = total % 60;
[scoresString appendFormat:@"%i. %02i:%02i\n", i + 1, minutes, seconds];
请注意%和i之间的02 - 表示将数字空格为两个字符并插入前导零。
顺便提一下,如果您的秒数以7008出现,那么使用上面的逻辑,您将获得116:48的时间 - 即116分48秒。你确定你的时间是几秒钟?如果是,您可能希望添加一小时列。