[android] EditText에 특수문자 입력 제한 걸기

 et.setFilters(new InputFilter[]{new InputFilter() {
      @Override
      public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
        for (int i = start; i < end; i++) {
          if (!Character.isLetterOrDigit(source.charAt(i))) {
            return "";
          }
        }
        return null;
      }
    }});

이러면 특수문자만 입력이 안된다.

 

 

덤으로 길이제한은

et.setFilters(new InputFilter[]{new InputFilter.LengthFilter(10)});

이렇게 하면 된다.