EditText每四位自动添加空格或者横线(银行卡输入格式,验券格式)
最近公司有个项目,需要这种验券格式1234-5678-1234;为了提高用户体验,要求用户只输入数字就可以了,横线没四位自动补全;同样,输入银行卡号时也和这个差不多;不多说直接上代码;
目录
用 [TOC]
来生成目录:
第一部分
先初始化你的Edittext:
//我是用的注解,自动生成的
@InjectView(R.id.m_edt_ticket)
EditText mEdtTicket;
//一般是这样
private EdiText edt;
edt=(ButEdiText on)findViewById(R.id.edt01)//引用你的布局
//调用方法:
bankCardNumAddSpace(edt);
第二部分
实现方法,直接拷过去:
/**
* 验卷,每四位自动跟横线
* @param mEditText
*/
protected void bankCardNumAddSpace(final EditText mEditText){
mEditText.addTextChangedListener(new TextWatcher() {
int beforeTextLength=0;
int onTextLength=0;
boolean isChanged = false;
int location=0;//记录光