Estou tentando editar algumas informações de um produto cadastrado no banco de dados, só que o problema é o seguinte: todas as informações em “String” eu consigo manipular de boa, só tenho uma informação que foi recuperada através de um “Spinner”, na verdade não estou conseguindo Setar ela com o “setText” como as “String’s”, segue a baixo o código:
public class EditarProduto extends AppCompatActivity {
private DBHelper bd;
private Spinner spnUMedida;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.editar_produto);
Intent intent = getIntent();
final int id = intent.getIntExtra("ID",0);
bd = new DBHelper(this);
Produto produto = bd.getProduto(id);
/*ArrayAdapter adapterUM = ArrayAdapter.createFromResource (this,R.array.unidade_medida, android.R.layout.simple_spinner_item);
spnUMedida.setAdapter(adapterUM);*/
final EditText edtDescricao = (EditText) findViewById(R.id.edtDescricao);
final EditText edtCategoria = (EditText) findViewById(R.id.edtCategoria);
final Spinner spnUMedida = (Spinner) findViewById(R.id.spnUMedida);
final EditText edtVCusto = (EditText) findViewById(R.id.edtVCusto);
final EditText edtVVenda = (EditText) findViewById(R.id.edtVVenda);
final EditText edtEAtual = (EditText) findViewById(R.id.edtEAtual);
final EditText edtEMinimo = (EditText) findViewById(R.id.edtEMinimo);
edtDescricao.setText(produto.getDescricao());
edtCategoria.setText(produto.getCategoria());
spnUMedida.setText(produto.getUnidadeMedida());
edtVCusto.setText(produto.getValorCusto());
edtVVenda.setText(produto.getValorVenda());
edtEAtual.setText(produto.getEstoqueAtual());
edtEMinimo.setText(produto.getEstoqueMinimo());
//edtMatricula.setText(String.valueOf(aluno.getMatricula()));
final Button btnExcluir = (Button) findViewById(R.id.btnExcluir);
btnExcluir.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Produto produto = new Produto();
produto.setId(id);
bd.deleteProduto(produto);
edtDescricao.setText("");
edtCategoria.setText("");
edtVCusto.setText("");
edtVVenda.setText("");
edtEAtual.setText("");
edtEMinimo.setText("");
btnExcluir.setEnabled(false);
Toast.makeText(getBaseContext(), "Produto removido com sucesso.", Toast.LENGTH_SHORT).show();
Intent i = new Intent(EditarProduto.this, Produtos.class);
startActivity(i);
}
});
final Button btnAlterar = (Button) findViewById(R.id.btnAlterar);
btnAlterar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Produto produto = new Produto();
produto.setId(id);
produto.setDescricao(edtDescricao.getText().toString());
produto.setCategoria(edtCategoria.getText().toString());
produto.setValorCusto(edtVCusto.getText().toString());
produto.setValorVenda(edtVVenda.getText().toString());
produto.setEstoqueAtual(edtEAtual.getText().toString());
produto.setEstoqueMinimo(edtEMinimo.getText().toString());
bd.updateProduto(produto);
Toast.makeText(getBaseContext(), "Produto alterado com sucesso.", Toast.LENGTH_SHORT).show();
Intent i = new Intent(EditarProduto.this, Produtos.class);
startActivity(i);
}
});
}
A dificuldade está nessa linha “spnUMedida.setText(produto.getUnidadeMedida());”.