Format credit card in edit text in android

后端 未结 29 2052
耶瑟儿~
耶瑟儿~ 2020-11-30 19:18

How to make EditText accept input in format:

4digit 4digit 4digit 4digit 

I tried Custom format edit text input android to acc

29条回答
  •  被撕碎了的回忆
    2020-11-30 19:52

    import android.text.Editable;
    import android.text.TextWatcher;
    import android.widget.EditText;`
    
    public class CreditCard implements TextWatcher
    {
        EditText editText;
    
        public CreditCard(EditText editText)
        {
            this.editText = editText;
        }
    
        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {
    
        }
    
        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
    
        }
    
        @Override
        public void afterTextChanged(Editable s) {
            try
            {
                editText.removeTextChangedListener(this);
    
                String str = editText.getText().toString().replaceAll("-", "");
    
                editText.setText(setDash(str));
    
                editText.setSelection(editText.getText().toString().length());
    
                editText.addTextChangedListener(this);
                return;
            }
    
            catch (Exception ex)
            {
                ex.printStackTrace();
                editText.addTextChangedListener(this);
            }
    
        }
    
        public static String setDash(String value)
        {
            String str = "";
            int j = 0;
    
            for (int i = 0;i

提交回复
热议问题