objective-c - 创建一个带有前导零的分钟和秒的 NSString

标签 objective-c string cocoa cocoa-touch formatting

我需要不断更新标签中的播放时间。我得到的时间 NSTimeInterval currentProgress = self.movi​​ePlayerController.currentPlaybackTime; 返回一个 double 值。但我需要显示的格式是“MM:SS”(00:00)。我尝试过以下代码

NSTimeInterval currentProgress = self.moviePlayerController.currentPlaybackTime;

float min = floor(currentProgress/60);
float sec = round(currentProgress - min * 60);

当进度时间为 10 分 10 秒时,它显示得很好,如“10:10”。但这里的问题是,如果进度时间是1分7秒,它在标签中显示“1:7”。我的预期显示是“01:07”。我怎样才能做到这一点?

最佳答案

NSString *time = [NSString stringWithFormat:@"%02d:%02d", (int)min, (int)sec];

试试这个。应该可以工作!

关于objective-c - 创建一个带有前导零的分钟和秒的 NSString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11012400/

相关文章:

iphone - 在屏幕的一半部分打开相机 - iPhone

python - string.printable 中的控制字符有什么用?

java - 将文本文件的内容读取到 String 时出现无效字符

xcode - 为什么 IB 不提供在自定义 Swift 文件中插入 @IBOutlet 或 @IBAction 的选项?

objective-c - 如何在应用程序中使用空格键来调用快速查看

objective-c - iOS 上的 cv::HoughLines 失败并显示 'OpenCV Error: Assertion failed'

ios - 当图像太大时使用 OpenGL 的黑色纹理

ios - 在 iOS 中确定闭合轮廓的算法

java - 解析包含右侧带有减号的数字的字符串

objective-c - 如何在 Cocoa 应用程序中将 NSView 添加到 NSWindow?