2011-06-29 9 views
4

NSStringを連結する際に問題があります。objective-c NSStringを連結する

ボタンを押すたびに、何か( "aux")が私の文字列( "myString")に追加されたかったです。 so:

NSString *aux = [NSString stringWithFormat: @"%d", buttonIndex]; 

myString=[NSString stringWithFormat:@"%@/%@",posTargetaText,aux]; 

aux = nil; 

ボタンを初めて押すとうまくいきますが、2番目のボタンはうまくいきません。

何か助けてください?

+1

「うまくいきません」と言ったらどういう意味ですか?あなたは何を見たいですか?あなたは実際に何を見ますか?サンプル出力を投稿できますか? –

+0

2回目に何が起こるのですか?クラッシュするのですか? – iMOBDEV

+0

'posTargetaText'の値を確認してください。 – Jhaliya

答えて

10

だから、確かにstringWithFormat使用することができますが、それはあなたが何をしたいのかを正確ですので、なぜあなたはstringByAppendingStringは、代わりに使用していませんか?

NSString *newString = [firstString stringByAppendingString:secondString]; 

あなたが本当に魅力的な理由がない限り、実際には可変文字列を使用する必要はありません。

+0

彼は2つの文字列の間に "/"を持っています。 stringWithFormatは最も簡単です。 – Steve

4

正確に何をしたいのかわかりません。しかし、コードごとにauxは毎回新しいbuttonIndex値を持ちます。ボタンをタップすると常に新しいミストリングが発生します。

文字列を常にmyStringに追加する場合は、このようにする必要があります。

myString=[NSString stringWithFormat:@"%@%@/%@",myString,posTargetaText,aux]; 

あなたは新しいのmyString文字列に同様のmyStringの前の値を追加すると仮定?

これはあなたが望むものか、それとも別のものかはわかりません。そうでない場合は、詳しく説明してください。

0

NSMutableStringを使用する必要があります。