Essa é a minha intenção deixar o Spinner pre selecionado
e o seu código realmente me ajudou. Muito obrigado.
Pensei em algo mais simples, talvez por isso não consegui resolver.
Por favor me ajude a entender algo.
Essa parte do código salva o item do Spinner e os demais da activity…
private void salvar() {
try {
contato.setNome(edtNome.getText().toString());
contato.setQuantidade(edtQuantidade.getText().toString());
contato.setCama(spnCama.getSelectedItem().toString());
contato.setMedida(String.valueOf(spnMedida.getSelectedItemPosition()));
contato.setTecido(String.valueOf(spnTecido.getSelectedItemPosition()));
if(contato.getId() == 0)
repositorioContato.inserir(contato);
else
repositorioContato.alterar(contato);
} catch (Exception ex) {
MessageBox.show(this, "Erro", "Erro ao salvar dados: " + ex.getMessage());
}
}
Porém o spnCama eu alterei para salvar a string e não a posição,
pois precisaria de setar e apresentar esta string em um textView de outra activity.
Já este código preenche a acticity com os dados salvos,
e eu alterei o Spinner spnCama com o código que você me apresentou.
private void preencheDados() {
edtNome.setText(contato.getNome());
edtQuantidade.setText(contato.getQuantidade());
for(int i= 0;i<spnCama.getCount();i++){
if(spnCama.getItemAtPosition(i).toString().equals(contato.getCama())){
spnCama.setSelection(i);
}
spnMedida.setSelection(Integer.parseInt(contato.getMedida()));
spnTecido.setSelection(Integer.parseInt(contato.getTecido()));
}
}
Porque assim dava erro NumberFormatException?
spnCama.setSelection(Integer.parseInt(contato.getCama()));
Tem jeito de setar esta string sem usar for e if ?
Complicado tratar esses dados…