このコードは正常に機能します。
NSString *titleForMail =[NSString stringWithFormat:@"text %@",_infoTFProduct.text];
[mailCont setSubject:titleForMail];
このコードは私に上記のエラーを与えますが。
[mailCont setSubject:@"yo! %@", _infoTFProduct.text];
理由を知りたいです。
このコードは正常に機能します。
NSString *titleForMail =[NSString stringWithFormat:@"text %@",_infoTFProduct.text];
[mailCont setSubject:titleForMail];
このコードは私に上記のエラーを与えますが。
[mailCont setSubject:@"yo! %@", _infoTFProduct.text];
理由を知りたいです。
なぜなら、まあ、[mailCont setSubject:@"yo! %@", _infoTFProduct.text];
明らかに2つの引数があるのですか?実際、コンマは最初の引数の終わりと2番目の引数の始まりを意味します。
その構文は、文字列の補間には普遍的ではありません。stringWithFormat:
そしてNSLog
私は、この引数形式を処理できる唯一のケースであると信じています。
したがって、文字列を受け入れるメソッドは、補間引数を持つ文字列も受け入れることはほとんどありません。値を文字列に補間し、文字列を使用できる場所でそれを使用する場合は、[NSString stringWithFormat:]
最初に使用する必要があります。
これを必要な場所に配置してみてください。
[mailCont setSubject:[NSString stringWithFormat:@"yo! %@", _infoTFProduct.text]];