手机输入格式化显示3-4-4

本文介绍了如何在Android开发中创建一个3-4-4格式的手机号输入框,通过监听EditText并使用TextWatcher动态添加分隔符。在用户输入3个和7个数字后自动插入分隔符,同时处理用户修改数字的情况,避免分隔符混乱。此外,还讨论了如何在获取手机号时去除分隔符以满足服务器接口要求。
摘要由CSDN通过智能技术生成

                     手机号格式化输入框 3-4-4

开发过程中总遇到显示手机号的需求,如果不加分隔符显示,看起来不太方便,也不美观,所以需求上总要加上分隔符。网上找了一些demo,但是总感觉不和自己心意,仔细想想这个功能应该挺简单的,就自己动手写了一个(懒癌晚期,决心改掉这个毛病)。

     一般需求都是186-0000-0000或者186 0000 0000 等3-4-4格式,无非是分隔符不同。那么需求就简单了,在输入3个数字和7个数字后自动给输入框加上分隔符(以“-”为例)即可,那么只需要监听EditText,利用TextWatcher来监听。

    好了,思路有了,下面开始动手:自定义一个PhoneEditText继承EditText

/**
 * Created   on 16/6/15.
 */
public class PhoneEditText extends EditText implements View.OnFocusChangeListener {
    private int lastLength = 0;
    private TextWatcher mTextWatcher;

      实现它的构造方法

public PhoneEditText(Context context) {
    this(context, null);
}

public PhoneEditText(Context context, AttributeSet attrs) {
    this(context, attrs, android.R.attr.editTextStyle); // Attention here !
}

public PhoneEditText(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值