title: Android SetText changes keyboard type
body: <p>I'm developing an android application which contains an <code>EditText</code>.     </p>
  
  <p>I control what is written in the editText by calling </p>
  
  <pre><code>et.addTextChangedListener(new TextWatcher() {
      public void afterTextChanged(Editable s) {
          String message = et.getText().toString();
          if(s.toString().compareTo(before)!=0){
              et.setText(message);
              et.setSelection(et.getText().length());
          }
      }
  
      public void beforeTextChanged(CharSequence s, int start, int count, int after) {
          before = et.getText().toString();
          System.out.println("After");
      }
  
      public void onTextChanged(CharSequence s, int start, int before, int count) {
          System.out.println("ON");
      }
  });
  </code></pre>
  
  <p>In afterTextChanged function I use <code>et.setText("some Text");</code>
  the problem is that,after the text is changed the keyboard also changed,for example if the <code>symbol</code> keyboard was opened and I used setText, it will automatically changed to <code>qwerty</code>.</p>
  
  <p>How can I solve this problem?</p>