• EditText输入手机号自动带空格


    xml:

    <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) {

    }
    });
  • 相关阅读:
    把A库aa表结构复制到B库中生成bb表
    C #登录代码
    C# 跟查询有关的代码
    C# 输出用“*”组成的菱形
    POJ 3696 The Luckiest number 数论,GCD
    用一句SQL取出第 m 条到第 n 条记录的方法
    Web Services的基本原理
    常用SQL语句
    什么应用适合Web Services
    应该了解的垃圾收集机制(一)
  • 原文地址:https://www.cnblogs.com/Talon-lly/p/6397054.html
Copyright © 2020-2023  润新知