EditText输入手机号自动带空格

xml:android

<EditText
android:id="@+id/edit_main"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入手机号"
android:inputType="number"
android:maxLength="13"/>

Activity:

mEditText = (EditText) findViewById(R.id.edit_main);mEditText.addTextChangedListener(new TextWatcher() {    @Override    public void beforeTextChanged(CharSequence s, int start, int count, int after) {    }    @Override    public void onTextChanged(CharSequence charSequence, int start, int before, int count) {        if (charSequence == null || charSequence.length() == 0)            return;        StringBuilder stringBuilder = new StringBuilder();        for (int i = 0; i < charSequence.length(); i++) {            if (i != 3 && i != 8 && charSequence.charAt(i) == ' ') {                continue;            } else {                stringBuilder.append(charSequence.charAt(i));                if ((stringBuilder.length() == 4 || stringBuilder.length() == 9)                        && stringBuilder.charAt(stringBuilder.length() - 1) != ' ') {                    stringBuilder.insert(stringBuilder.length() - 1, ' ');                }            }        }        if (!stringBuilder.toString().equals(charSequence.toString())) {            int index = start + 1;            if (stringBuilder.charAt(start) == ' ') {                if (before == 0) {                    index++;                } else {                    index--;                }            } else {                if (before == 1) {                    index--;                }            }            mEditText.setText(stringBuilder.toString());            mEditText.setSelection(index);        }    }    @Override    public void afterTextChanged(Editable s) {    }});
相关文章
相关标签/搜索