将变量附加到Objective C中的字符串

时间:2014-02-19 20:36:15

标签: objective-c

我正在尝试创建一个简单的函数,它接受一个int并将其转换为时间但是作为字符串,以便我可以在iPhone上显示它。

我无法正确连接字符串,这是函数,任何建议或帮助都会非常感激。

- (string)countdown(int t) {
    for(int time = t; time >= 0; time--) {

        int h = time / 3600;
        int m = (time / 60) - (h * 60);
        int s = time % 60;

        NSString* timeString = [NSMutableString stringWithFormat: h, @":", m, @":", s];

        self.visualTimer.text = timeString;
    }
}

1 个答案:

答案 0 :(得分:3)

该行

NSString* timeString = [NSMutableString stringWithFormat: h, @":", m, @":", s];

必须是

NSString* timeString = [NSMutableString stringWithFormat:@"%02d:%02d:%02d" h,m, s];

请注意,在您第一次返回tempString时结束循环。此外,对于倒计时,如果您不在循环内返回,则您正在使用的构造将相当快地运行。考虑阅读并使用NSTimer方法。

编辑:您编辑的代码不会产生可见的结果,因为for循环将阻止runloop,因此UI不会更新。