8

アプリを iOS7 向けに準備していますが、奇妙な問題があります。

空の TextField テキストを取得しようとすると、「nil」が返されますが、以前は @"" (空の文字列) が返されていました。

それは正式な変更ですか、それともバグですか?

ありがとうシャニ

4

3 に答える 3

10

iOS6からiOS7への正式な変更です。テキスト フィールドは以前は空の文字列を返していましたが、nil代わりに文字列が返されるようになりました。

@property (weak, nonatomic) IBOutlet UITextField *tf;

// iOS6
if (![self.tf.text isEqualToString:@""]){

// iOS7    
if (self.tf.text != nil && ![self.tf.text isEqualToString:@""]) {
于 2013-09-11T12:38:42.050 に答える
5

はい、正式な変更です。したがって、このように処理する必要があります

// For iOS 6
if (![self.tf.text isEqualToString:@""])
{
}

// For iOS 7    
if (self.tf.text != nil && [self.tf.text length] != 0)
{
}

また

この条件は、iOS 7 とそれ以前のバージョンの両方に適用されます。

if([self.tf.text length] != 0)
{
// do your stuff
}
于 2013-09-12T12:18:06.363 に答える