格式字符串不是文字警告

时间:2013-10-04 21:23:08

标签: nsstring

我调用了方法

 [NSAlert alertWithMessageText:string1 defaultButton:@"OK" alternateButton:@"" otherButton:@"" informativeTextWithFormat:infoString]

我需要将infoString作为字符串变量,这就是我设置它的方式。但是,我收到一条警告,说“格式字符串不是字符串文字(可能不安全)。”

我尝试使用谷歌搜索找到答案,但我发现的建议都没有在我的案例中起作用。我尝试将infoString替换为:

 [NSString stringWithString:infoString];

 [NSString stringWithFormat:@"%@", infoString];

我找不到摆脱这个警告的方法。任何建议都是受欢迎和有帮助的。

谢谢!

1 个答案:

答案 0 :(得分:2)

informativeTextWithFormat期待一个格式字符串,出于安全原因,该字符串应该是常量。

要进行简单修复,请更改为:

[NSAlert alertWithMessageText:string1
                defaultButton:@"OK"
              alternateButton:@""
                  otherButton:@""
    informativeTextWithFormat:@"%@", infoString];