确保 UITextField 不仅充满空格

Ensure UITextField isn't ONLY full of spaces

我有一个 iOS 应用程序,它有一个 UITextField,用户可以在其中输入名称。我想确保他们的用户不只是输入一堆 space 然后点击保存。

接受为有效:

blah blah blah with spaces

无效

only spaces

换句话说,我不在乎用户是否添加了带有一些空白 space 的名称,我不希望用户按几次 space 栏然后保存名称。

我想过执行此检查:

if ((nameField == nil) || ([nameField isEqualToString:@" "])) {
   // Not valid....
}

else {
   // Valid...
}

您可以看到,在我的 if 语句中,我正在检查 @" "。这会检查以确保用户没有输入带有 space 的空字符串。但是那只是针对一个space,如果用户输入两次space并保存,那么if语句仍然认为它是有效的。那么我该如何扩大规模呢?

谢谢你的时间,丹。

你可以trim像这样的所有空格

text = [text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];

如果全是空格,那么 text 将是空字符串,您可以检查

if (text.length == 0)
{
// not acceptable
}
else
{
//valid
}