UITextField用于空白检查的奇怪行为

时间:2012-03-26 05:29:34

标签: iphone uitextfield notnull

我有一个UITextField说txtTitle。我想在将数据插入数据库时​​检查该字段是否为空白。

为此我写了

if(![txtTitle.text isEqualToString:@""])
{
   //Save
}

但令我震惊的是它不起作用!我之前做过这种类型的检查并且工作正常。但不是这种情况。所以我用下面的方法检查它,

if(txtTitle.text!=NULL)
{
   //Save
}

它运作正常。

现在我对此感到困惑。我曾经打印过NSLog(@“%@”,txtTitle.text)而没有输入任何东西。它打印(null)。

有人请证明两种IF条件之间的区别。

由于

2 个答案:

答案 0 :(得分:1)

也许您可以使用

来检查字符串的长度属性
if([txtTitle.text length] > 0){
// Save
}

我认为区别在于一个完全未初始化的字符串和一个已初始化的字符串,但它只是空的。

希望这有帮助

答案 1 :(得分:-1)

@Hemang 正如你所提到的那样,NSLog给你(null)..你必须比较像

[txtTitle.text isEqualToString:@"(null)"]

其他明智的使用

if([txtTitle.text length] > 0)
{

}