Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Validação com Android Saripaar 2

Validação com Android Saripaar 2

Mostrar como validar forms no Android

Avatar for Felipe Oliveira

Felipe Oliveira

May 19, 2016
Tweet

More Decks by Felipe Oliveira

Other Decks in Programming

Transcript

  1. Nosso cenário: Será simples , vamos supor que precisamos cadastrar

    um usuário de forma rápida. O usuário terá apenas email e senha.
  2. Configurando os campos na Activity: public class MainActivity extends AppCompatActivity

    { @NotEmpty @Email private EditText mEditEmail; @Password(min = 6 , scheme = Password.Scheme.NUMERIC) private EditText mEditPassword; @ConfirmPassword private EditText mEditConfirmPassword; ... }
  3. Criando o objeto Validator do Android Saripaar: public class MainActivity

    extends AppCompatActivity { … private Validator validator; ... }
  4. Criando uma instância para o nosso Validator: public class MainActivity

    extends AppCompatActivity { … private Validator validator; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); validator = new Validator(this); } ... }
  5. Implementando a interface que vai nos trazer o resultado da

    validação: public class MainActivity extends AppCompatActivity implements Validator.ValidationListener { ... @Override public void onValidationSucceeded() { } @Override public void onValidationFailed(List<ValidationError> errors) { } ... }
  6. Vamos dizer ao nosso validator que ele deve usar a

    implementação da interface de validação que acabamos de criar : public class MainActivity extends AppCompatActivity implements Validator.ValidationListener { … @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); validator = new Validator(this); validator.setValidationListener(this); } ... }
  7. Falta pouco, ainda precisamos da ação que vai chamar a

    validação: public class MainActivity extends AppCompatActivity implements Validator.ValidationListener { ... private Button mButtonCreate; ... @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ... mButtonCreate = (Button) findViewById(R.id.create); ... mButtonCreate.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { validator.validate(); } }); } }
  8. O resultado será ouvido aqui: public class MainActivity extends AppCompatActivity

    implements Validator.ValidationListener { ... @Override public void onValidationSucceeded() { //A validaçao passou , continue } @Override public void onValidationFailed(List<ValidationError> errors) { // Deu ruim , trate o erro } ... }
  9. Tratando os erros: public class MainActivity extends AppCompatActivity implements Validator.ValidationListener

    { ... @Override public void onValidationFailed(List<ValidationError> errors) { for (ValidationError error : errors) { View view = error.getView(); String message = error.getCollatedErrorMessage(this); // Display error messages ;) if (view instanceof EditText) { ((EditText) view).setError(message); } else { Toast.makeText(this, message, Toast.LENGTH_LONG).show(); } } } ... }