Як дозволити введення тільки заданих символів в 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});  

Напишіть перше повідомлення!

Ви повинні увійти під своїм аккаунтом щоб залишати коментарі