-1

このコードは正常に機能します。

NSString *titleForMail =[NSString stringWithFormat:@"text %@",_infoTFProduct.text];
        [mailCont setSubject:titleForMail];

このコードは私に上記のエラーを与えますが。

[mailCont setSubject:@"yo! %@", _infoTFProduct.text];

理由を知りたいです。

スクリーンショット

4

2 に答える 2

5

なぜなら、まあ、[mailCont setSubject:@"yo! %@", _infoTFProduct.text];明らかに2つの引数があるのですか?実際、コンマは最初の引数の終わりと2番目の引数の始まりを意味します。

その構文は、文字列の補間には普遍的ではありません。stringWithFormat:そしてNSLog私は、この引数形式を処理できる唯一のケースであると信じています。

したがって、文字列を受け入れるメソッドは、補間引数を持つ文字列も受け入れることはほとんどありません。値を文字列に補間し、文字列を使用できる場所でそれを使用する場合は、[NSString stringWithFormat:]最初に使用する必要があります。

于 2013-01-15T21:11:47.693 に答える
0

これを必要な場所に配置してみてください。

[mailCont setSubject:[NSString stringWithFormat:@"yo! %@", _infoTFProduct.text]];

于 2013-01-15T21:11:58.787 に答える