Как разрешить ввод только заданных символов в EditText на платформе Android

октября
06
2012

Если необходимо запретить ввод в EditText всех символов, кроме указанных, то эта статья для Вас. Примером данного запрещения является поле ввода имени пользователя, которое, например, может содержать только буквы и цифры.

Решение этой задачи объясняется на простом примере. Допустим, необходимо разрешить ввод только символов 'a', 'f' и 'g'. Примените следующий фильтр к Вашему EditText'у:


InputFilter customFilter = new InputFilter() {   
	@Override
	public CharSequence filter(CharSequence arg0, int arg1, int arg2, Spanned arg3, int arg4, int arg5){  
		for (int i = arg1; i < arg2; i++) {   
			if( arg0.charAt(i) != 'a' || arg0.charAt(i) != 'f' || arg0.charAt(i) != 'g' ) ) {   
				return "";   
			}
		}
		return null;   
	}
};
editText.setFilters(new InputFilter[]{ customFilter});  

Напишите первое сообщение!

Вы должны войти под своим аккаунтом чтобы оставлять комментарии