如何在 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,如何在代码中将日期选择器的最小日期设置为今天?
如何在 iphone sdk 中将 NSArray/NSMutableArray 转换为 NSFetchedResultsController?