2015-03-19 5 views
0

Я пробовал использовать TextChangedListener, beforeTextChanged и afterTextChanged! но у меня не было никакого результатаКак я могу управлять EditText в Android, чтобы не вводить один и тот же номер дважды?

+0

Так что вы хотите сделать это так, вы не можете ввести, например, 9 в два раза? –

+0

ItzHoudini да точно –

+1

textwatcher - правильный подход. Вы можете поделиться своим кодом? – bond

ответ

1

TextWatcher класс может помочь вам:

@Override 
     public void afterTextChanged(Editable arg0) { 
     // TODO Auto-generated method stub 
     } 
     @Override 
     public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, 
      int arg3) { 
     // TODO Auto-generated method stub 
     } 
     @Override 
     public void onTextChanged(CharSequence s, int a, int b, int c) { 
     // TODO Auto-generated method stub 
     output.setText(s); 
     if(a == 9){ 
      Toast.makeText(getApplicationContext(), "Maximum Limit Reached", Toast.LENGTH_SHORT).show(); 
     } 
     }}; 

Complete reference could be found here.

0

эта работа для меня :)

txtwt = new TextWatcher() 
    { 
     char last ; 
     @Override 
     public void beforeTextChanged(CharSequence s, int start, int count, int after) 
     { 
      if (s.toString().length() >= 1) 
       EntredNumber = s.toString(); 
     } 
     @Override 
     public void onTextChanged(CharSequence s, int start, int before, int count) 
     { 
      if (s.toString().length() >= 2) 
      { 
       last = (s.toString().charAt(s.toString().length() - 1)); 
       // Toast.makeText(getApplicationContext(), last +"", Toast.LENGTH_SHORT).show(); 
       if (EntredNumber.contains((last + ""))) 
       { 
        txtImputNumber.removeTextChangedListener(txtwt); 
        txtImputNumber.setText(EntredNumber); 
        txtImputNumber.setSelection(EntredNumber.length()); 
        txtImputNumber.addTextChangedListener(txtwt); 
       } 
      } 
     } 
     @Override 
     public void afterTextChanged(Editable s) 
     { 
     } 
    }; 

    txtImputNumber.addTextChangedListener(txtwt);