Galera, to com um problema aqui. Tenho nessa Activity um spinner que preencho com esse Array.
O que acontece é que qdo entro nessa tela, mostra a msg que o campo edtQtde não está preenchido.
Gostaria que mostrasse somente qdo clicasse no spinner para escolher o valor de desconto e mostrasse no lblValorDesconto e também que ja calculasse o desconto ja com a quantidade.
private static final String[] desconto = {"0%","1%","2%","3%","4%","5%"};
ArrayAdapter<String> aDesconto;
Spinner spnDesconto;
private EditText edtVendedor, edtQtde;
edtQtde = (EditText) findViewById(R.id.edtQtde);
lblValorDesconto = (TextView) findViewById(R.id.lblValorDesconto);
lblValorTotal = (TextView) findViewById(R.id.lblValorTotal);
spnDesconto = (Spinner) findViewById(R.id.spnDesconto);
aDesconto = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, desconto);
spnDesconto.setAdapter(aDesconto);
spnDesconto.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
double desconto = 0, novo_val = 0;
if(edtQtde.getText().toString().equals("")){
Toast.makeText(getBaseContext(), lblValor.getText().toString(), Toast.LENGTH_LONG).show();
mensagemExibir("Erro ao Calcular Total","Quantidade em branco, verifique!");
edtQtde.requestFocus();
return;
}
desconto = Double.parseDouble(lblValor.getText().toString());
switch(spnDesconto.getSelectedItemPosition()){
case 0: novo_val = desconto - (desconto * 0.00);break;
case 1: novo_val = desconto - (desconto * 0.01);break;
case 2: novo_val = desconto - (desconto * 0.02);break;
case 3: novo_val = desconto - (desconto * 0.03);break;
case 4: novo_val = desconto - (desconto * 0.04);break;
case 5: novo_val = desconto - (desconto * 0.05);break;
}
String valor = String.format("%.2f", novo_val);
lblValorDesconto.setText(String.valueOf(valor));
lblValorTotal.setText(String.valueOf(valor));
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});