如何在 iphone 中将 NSTimeInterval 定义为 mm:ss 格式?

Posted

技术标签:

【中文标题】如何在 iphone 中将 NSTimeInterval 定义为 mm:ss 格式?【英文标题】:how can i define NSTimeInterval to mm:ss format in iphone? 【发布时间】:2010-04-01 08:12:28 【问题描述】:

如何将 NSTimeInterval 定义为 mm:ss 格式?

【问题讨论】:

***.com/questions/1189252/…的可能重复 【参考方案1】:
NSTimeInterval interval = 326.4;
long min = (long)interval / 60;    // divide two longs, truncates
long sec = (long)interval % 60;    // remainder of long divide
NSString* str = [[NSString alloc] initWithFormat:@"%02d:%02d", min, sec];

%02d 格式说明符为您提供一个带前导零的 2 位数字。

注意:这仅适用于区间的正值。

【讨论】:

只取区间的绝对值,然后进行数学运算,使其也适用于负值。 +1 为好的解决方案!【参考方案2】:

见this question。

Brian Ramsay 接受的答案是:

给定 326.4 秒,伪代码:

minutes = floor(326.4/60)
seconds = round(326.4 - minutes * 60)

如果您使用%02d 打印,您将获得例如03:08 如果任一数字小于 10。

【讨论】:

使用 "%2d" 你会得到 " 3: 8",你希望 %02d 得到前导零。 感谢@progrmr 指出这一点;我已经有一段时间没有回头看这个答案来发现不平衡了。

以上是关于如何在 iphone 中将 NSTimeInterval 定义为 mm:ss 格式?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iPhone 中将 NSData 转换为字节数组?

iPhone,如何在代码中将日期选择器的最小日期设置为今天?

如何在iphone应用程序中将饼图保存为pdf文件

如何在 iphone sdk 中将 NSArray/NSMutableArray 转换为 NSFetchedResultsController?

如何在 iphone 中将 NSTimeInterval 定义为 mm:ss 格式?

如何在iPhone中将图像设置为UISegmentedControl?