2011-07-15 14 views
0

ユーザーがテキストフィールドに入力した内容が文字列と等しいかどうかを確認しようとしています。何らかの理由で、私のアプリはに耳を傾けていません:テキストに対応していないようUITextFieldからのテキストの取得

[textField1 text] isEqualToString:@"Blah"; 

[textField1.text isEqualToString:@"Blah"]; 

また、動作しません。それでも、textField1をテキストビューに接続するだけで、すべてが美しく動作します。私は間違って何をしていますか?ご協力いただきありがとうございます!

+0

あなたのテキストフィールド1には、実際に対応しており、その中にテキストが実際に正確にあなたがもしあなたの 'のNSLog(あなたの期待の文字列を取得してください –

+0

「何とか」@等しい場合はtrueを返すコードのright..the最初の行をフックアップされている場合@ "%@"、textField1.text); '? – xoebus

+0

'textField1'はnilに設定されていますか? – bshirley

答えて

-2
if ([textField1.text compare:@"Blah"] ==0) { 
//its a match 

} 
+0

感謝します!それは完璧に働いた。 –

+1

文字列に特殊文字が含まれていない限り、これは実際にコードの最初の行と異なるものではありません。 –

+1

もしあなたが 'compare'を使うつもりなら、可読性のために' NSOrderedSame'(0ではなく)を使用してください! – bshirley

1

textField1.textから入手したものをログに記録することをお勧めします。テキストフィールドにテキストがあるときに返される文字列がnilの場合、コンセントが正しく接続されていないことを意味します。また、-isEqualToStringが完全一致(大文字、小文字、すべてのもの)を探すので、余分なスペースでもNOが返されることに気付くことも重要です。

+0

何かを入力してもいなくても、NULLを返します。私はちょうど今、正確に一致したいと思うし、必要に応じて後でstringRangeのことをします。ありがとう。 –

+2

テキストフィールドにテキストがある場合でもNULLを返した場合、コンセントが正しく接続されていないことを意味します。アウトレットをもう一度チェックして、テキストが入力された後で 'textField1.text'を呼び出すことを確認してください。 – indragie

+0

ルーイはそれを正しくしました。私はリンクに触れることなく自分のコードを彼と置き換え、それは動作します。 –

関連する問題