1

我在学习 Objective-C、Cocoa 和 IB 的第二天。这可能是非常简单的事情,但我无法解决。

基本上,我有一个带有 NSTextField 的表单,当用户在此字段中键入并单击“确定”按钮时,应用程序将显示一条警报,说 Hello 后跟文本字段的值。

除了字符串连接之外,这一切都在工作。我正在使用以下代码连接字符串“Hello”和 NSTextField 值:

NSString *nameText = [NSString stringWithFormat:@"Hello %s", [nameTextField stringValue]];

当用户单击“确定”按钮时,会显示一条警报“Hello ‡√Ÿpˇ”!

4

2 回答 2

1

卡姆软件,

Obj-C 的 NSString 是一个对象,更正格式调用:

NSString *nameText = [NSString stringWithFormat:@"Hello %@",[nameTextField stringValue]];

注意%@而不是%s

坦率

于 2010-06-14T11:37:22.773 回答
1

stringValue返回NSString对象并且 %s 需要 c 字符串参数。尝试使用 %@ 代替:

NSString *nameText = [NSString stringWithFormat:@"Hello %@", [nameTextField stringValue]];
于 2010-06-14T11:37:27.593 回答