concretesolutions / canarinho

Utilitários Android para padrões Brasileiros
Apache License 2.0
178 stars 42 forks source link

validação do input quando o mesmo perde o foco #12

Closed cs-victor-rodrigues closed 7 years ago

cs-victor-rodrigues commented 8 years ago

Ao utilizar a lib senti falta de uma validação do input quando o mesmo perdia o foco, por exemplo, no caso de um usuário digitar um cep com apenas 4 digítos, ele era tido como um cep parcialmente válido. Alterei o código para que num caso como o acima, ao perder o foco do campo, o mesmo é valídado e não aceite campos parcialmente válidos pois os mesmos não possuem mais o foco.

Faz sentido? vlww :)

cs-victor-nascimento commented 7 years ago

@cs-victor-rodrigues Eu acho que como design seria melhor não fazermos magicamente. Da forma como está temos que criar uma instância, por exemplo de CPF, e adicionar tanto no addTextChangeListener(TextWatcher watcher) quanto no addOnFocusChangeListener(OnFocusChangeListener list). Só que o nome das classes estão todos sufixados como watchers.

Podemos fazer um OnScrollChangeListener genérico que verifica se um dos watchers é da Canarinho e o memso possui um validador. Daí aplicamos. O que acha?

@cs-rafael-toledo O que acha?

cs-victor-nascimento commented 7 years ago

@cs-rafael-toledo @cs-victor-rodrigues ping?

cs-victor-rodrigues commented 7 years ago

@cs-victor-nascimento eu concordo com você, acho que faz mais sentido sim. O tratamento de focus dentro de uma classe sufixada como watcher ficou um tanto inconsistente. Vou seguir nessa linha de raciocinio e abrir um novo merge request em breve :)