Hello
I'm developing an app in Android Studio that at some point instantiates an object called Mesa
with input from user. For this, there is a button with the following behavior:
if (botao_criar_mesa.isEnabled()) {
botao_criar_mesa.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Mesa novaMesa = helper.criaNovaMesa();
}
});
}
The helper
in the above code is a class that checks input inputs. If they do not obey a rule, the app should display an AlertDialog, and this is not happening. Here is the helper code:
public AcertoDeContasHelper(AcertoDeContasActivity activity) {
campoNumeroPessoas = activity.findViewById(R.id.nPessoas);
campoValorMesa = activity.findViewById(R.id.valorMesa);
alerta = new AlertDialog.Builder(activity).create();
alerta.setTitle("Oops... temos um erro!");
alerta.setButton(AlertDialog.BUTTON_POSITIVE, "Entendi!", new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int which){
alerta.dismiss();
}
});
alerta.setButton(AlertDialog.BUTTON_NEGATIVE, "Quero ajuda", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//TODO: implementar intent para a tela de ajuda
}
});
}
public Mesa criaNovaMesa() {
Mesa mesa = new Mesa();
int numeroPessoas = Integer.parseInt(campoNumeroPessoas.getText().toString());
BigDecimal valorMesa = new BigDecimal(campoValorMesa.getText().toString());
validaValores(mesa, numeroPessoas, valorMesa);
return mesa;
}
private void validaValores(Mesa mesa, int numeroPessoas, BigDecimal valorMesa){
if (numeroPessoas > 0 && numeroPessoas <= 30) {
mesa.setNumeroPessoas(numeroPessoas);
} else if (numeroPessoas <= 0 ) {
alerta.setMessage("O número de pessoas deve ser no mínimo 1!");
alerta.show();
} else {
alerta.setMessage("O número de pessoas deve ser no máximo 30!");
alerta.show();
}
}
Does anyone know what the error is and what should I do to fix it? I will be here to clarify any doubts.
Thank you in advance!