EditTextのテキストの先頭にスペースを追加したいと思います。そのため、ユーザーが削除ボタンを押しても、最初にスペースがあります。最初の文字がスペースであるかどうかを確認し、そうでない場合は、先頭にスペースを自動的に追加するにはどうすればよいですか?
質問する
3014 次
2 に答える
2
onTextChanged()をオーバーライドし、スペースがEditText文字列の最初の文字であるかどうかを確認することにより、TextWatcherでこれを行うことができます。そして、そうでない場合はそれを追加します。
mEditText.addTextChangedListener(new TextWatcher(){
public void afterTextChanged(Editable s) {}
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
public void onTextChanged(CharSequence s, int start, int before, int count) {
//do stuff
String mStr = mEditText.getText().toString();
if(mStr.charAt(0) != ' '){
mEditText.setText(' ' + mStr);
}
}
});
于 2012-08-21T03:27:24.877 に答える
1
ClassstartWith()
のメソッドを使用して、要件を確認できます。String
String str = editText.getText().toString();
if ( !str.startsWith ( " " ) )
{
// add space
editText.getText().insert(0, " ");
}
KeyPressイベントで上記の状態を確認する必要があります。
于 2012-08-21T03:27:09.353 に答える