Чтобы уменьшить детализацию логики проверки, я создал библиотеку для Android . Он выполняет большую часть повседневных проверок с использованием аннотаций и встроенных правил. Существуют ограничения, такие как @TextRule
, @NumberRule
, @Required
, @Regex
, @Email
, @IpAddress
, @Password
и т. Д.,
Вы можете добавить эти аннотации к ссылкам на виджеты вашего пользовательского интерфейса и выполнить проверки. Это также позволяет выполнять проверки асинхронно, что идеально подходит для таких ситуаций, как проверка уникального имени пользователя с удаленного сервера.
На домашней странице проекта приведен пример использования аннотаций . Вы также можете прочитать сообщение в блоге , в котором я написал примеры кодов о том, как писать собственные правила для проверок.
Вот простой пример, демонстрирующий использование библиотеки.
@Required(order = 1)
@Email(order = 2)
private EditText emailEditText;
@Password(order = 3)
@TextRule(order = 4, minLength = 6, message = "Enter at least 6 characters.")
private EditText passwordEditText;
@ConfirmPassword(order = 5)
private EditText confirmPasswordEditText;
@Checked(order = 6, message = "You must agree to the terms.")
private CheckBox iAgreeCheckBox;
Библиотека расширяемая, вы можете написать свои собственные правила, расширив класс Rule
.