2017-02-02 11 views
0

パスワードに編集テキスト入力タイプが設定されています。しかし、それはスペースを特殊文字としての文字と非英語文字として受け入れます。どうすれば無効にできますか?セット入力タイプのedittextでスペースと英語以外の文字を使用できる理由

mPassword.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD); 
    mPassword.setTypeface(mUsername.getTypeface()); 
+1

あなたは特殊文字を禁止したい場合は、独自のロジックを記述する必要があります。 EditTextをpasswordに設定すると、アスタリスクで入力がマスクされ、単独の検証は実行されません。 – Nerd

答えて

0

あなたはこの問題を回避あなたのように動作するように試みることができます。

mPassword.addTextChangedListener(new TextWatcher() { 
      @Override 
      public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) { 
       /** When user changed the Text */ 
       if(mPassword.contains(" ") || mPassword.contains(/*non-english chars*/)){ 
        //set error msg 
       } 
       else{ 
        //do stuff 
       } 
      } 

      @Override 
      public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) { 
       // TODO Auto-generated method stub 
      } 

      @Override 
      public void afterTextChanged(Editable arg0) { 
      } 
     }); 
関連する問題