变量总是等于零

时间:2011-05-14 10:29:13

标签: iphone objective-c

亲爱的开发者嗨!我刚刚写了我的第一部iphone游戏。但我面临下面的信息输出问题

myStr = [NSString  stringWithFormat:@"Best Score:", counter];

变量“counter”每次都会改变敌人的命中值。但在信息输出中,我总是收到零,如“最佳得分:0”。帮助理解并解决该问题。

Class Texture&我从约翰沃德来自www.karmatoad.co.uk

这里有一些代码:

myStr = [NSString  stringWithFormat:@"Best Score:", counter];
_Texture = [[Texture alloc] initWithText: myStr fontSize:24];
_Sprite = [[Sprite alloc] initWithTexture: _Texture];
[_Sprite drawSprite];

3 个答案:

答案 0 :(得分:3)

尝试:

myStr = [NSString  stringWithFormat:@"Best Score: %d", counter];

和%d是整数类型,如果counter是float

myStr = [NSString  stringWithFormat:@"Best Score: %f", counter];

答案 1 :(得分:1)

使用以下

myStr = [NSString  stringWithFormat:@"Best Score: %d", counter];

答案 2 :(得分:0)

正如其他人所建议的那样,您缺少变量的占位符。我只是想提供一些背景知识:

NSString支持为ANSI C函数printf()定义的格式字符,以及任何对象的%@

在格式字符串中,%字符宣布值的占位符,后面的字符决定了预期值的类型以及如何格式化,即format specifiers