Android EditText:检查空格是否不在开头或结尾

eri*_*ers 2 java string android

我有一个输入字段,用户必须在其中输入他的名字和姓氏。现在我想检查是否有一个空格既不在输入的开头也不在输入的结尾。只有在这种情况下,才会启用按钮。

检查空格很容易:

private EditText input;
input = (EditText) findViewById(R.id.input);  

if(input.getText().toString().contains(" ")) {
   button.setEnabled(true);
}
Run Code Online (Sandbox Code Playgroud)

但是如何确保空格不在输入的开头或结尾?

谢谢你的帮助

Ahm*_*yan 5

尝试这个:

已编辑

String str = input.getText().toString();
if (str.contains(" ") && (!str.startsWith(" ") && !str.endsWith(" ")) )
    button.setEnabled(true);
Run Code Online (Sandbox Code Playgroud)

或者

  if ( !(Character.isWhitespace(str.charAt(0)) && Character.isWhitespace(str.charAt(str.length()-1)) ) )
     button.setEnabled(true);
Run Code Online (Sandbox Code Playgroud)

你也可以使用的组合trim()contains

if(str.trim().contains(" ")) 
  button.setEnabled(true);
Run Code Online (Sandbox Code Playgroud)