how to format phone number like xxx-xxx-xx-xx using textwacher tried following code,bt its not working while i delete elements
et_phone_num.addTextChangedListener(new PhoneNumberFormattingTextWatcher());
et_phone_num.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
et_phone_num.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
MyLog.e("onkeychange","key "+keyCode);
if(keyCode == KeyEvent.KEYCODE_DEL) {
keyDel = 1;
MyLog.e("onkeychange","key 1");
}
return false;
}
});
if (keyDel == 0) {
MyLog.e("onkeychange", "if key 0");
int len = et_phone_num.getText().toString().length();
if (len == 3) {
et_phone_num.setText(et_phone_num.getText().toString() + "-");
et_phone_num.setSelection(et_phone_num.getText().toString().length());
} else if (len == 7) {
et_phone_num.setText(et_phone_num.getText().toString() + "-");
et_phone_num.setSelection(et_phone_num.getText().toString().length());
} else if (len == 10) {
et_phone_num.setText(et_phone_num.getText().toString() + "-");
et_phone_num.setSelection(et_phone_num.getText().toString().length());
}
} else {
MyLog.e("onkeychange", "else key 0");
keyDel = 0;
}
}
@Override
public void afterTextChanged(Editable s) {
}
});