如何在Swift 2.0中检查UITextField是否为空?有没有更好的方法来计算字符串的长度?

8 浏览
0 Comments

如何在Swift 2.0中检查UITextField是否为空?有没有更好的方法来计算字符串的长度?

我正在尝试检查文本字段是否为空,并且我正在尝试的方法是

如果(EmailTextField.text.characters.count > 0)

{

}

但我无法在此计数方法上使用关系运算符。为什么?

0
0 Comments

这个问题出现的原因是需要检查一个UITextField是否为空,同时还想要排除空格。另外,还想知道有没有更好的方法来计算字符串的长度。

为了解决这个问题,可以使用一个String的扩展方法来检查字符串是否为空。这个方法会去掉字符串首尾的空格,并检查是否为空。在使用时,可以直接调用这个方法来检查UITextField的文本是否为空。

解决方法的代码如下所示:

extension String {

var isBlank: Bool {

get {

let trimmed = stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceCharacterSet())

return trimmed.isEmpty

}

}

}

使用时,可以像下面这样调用这个方法来检查UITextField的文本是否为空:

if !EmailTextField.text!.isBlank {

// TextField is not blank

}

这段代码可以放在类的最后面作为一个扩展方法。如果想要在全局范围内访问这个方法,也是可以的。

如果想要在判断是否为空的同时还要检查是否为nil,可以使用如下代码:

if (cell.txtEmail.text?.isBlank) != nil {

// do something

}

如果这个问题对其他人也有帮助,请给它点赞。

0
0 Comments

原因:在Swift 2.0中,我们需要检查UITextField是否为空,以及是否有更好的方法来计算字符串的长度。

解决方法:我们可以使用String的isEmpty属性来检查UITextField是否为空。代码示例如下:

// 如果EmailTextField是一个UITextField实例

if let text = EmailTextField.text where !text.isEmpty {

// 执行相应的操作

}

另外,我们还可以使用下面的代码来检查UITextField是否为空:

if EmailTextField.text != nil && !EmailTextField.text!.isEmpty {

// 执行相应的操作

}

在更新的答案中,我们需要注意到实际上的代码是`(a.text != nil && !a.text!.isEmpty)`。

这样就能够检查UITextField是否为空,并且可以使用更好的方法来计算字符串的长度。

0