1

Objective-C、Cocoa、および IB を学習して 2 日目です。これはおそらく本当に単純なことですが、うまくいきません。

基本的に、NSTextField を含むフォームがあります。ユーザーがこのフィールドに入力して [OK] ボタンをクリックすると、アプリケーションは Hello の後にテキスト フィールドの値が続くというアラートを表示します。

文字列の連結とは別に、すべてが機能しています。次のコードを使用して、文字列「Hello」と NSTextField 値を連結しています。

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

ユーザーが [OK] ボタンをクリックすると、アラートに "Hello ‡√Ÿpˇ" が表示されます。

4

2 に答える 2

1

Camsoft、

Obj-CのNSStringはオブジェクトであり、次のようにフォーマット呼び出しを修正します。

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

%sではなく%@に注意してください。

フランク

于 2010-06-14T11:37:22.773 に答える
1

stringValueオブジェクトを返しNSString、%sはc-stringパラメーターを期待します。代わりに%@を使用してみてください。

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