2
I’m trying to update a ListView
populated with database data from an ordination of a RadioGroup
.
Here are my codes:
private List<ApplicationInfo> mAppList;
private SimpleCursorAdapter adptLivros;
private SwipeMenuListView lv_Livros;
private RadioGroup rgOrdenar;
private String orderBy;
private SQLiteDatabase db;
protected void onResume() {
super.onResume();
rgOrdenar = (RadioGroup)findViewById(R.id.rgOrdenar);
orderBy = "";
rgOrdenar.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId) {
case R.id.rbTitulo:
// trata radioValor1
orderBy = "no_titulo";
break;
case R.id.rbAutor:
// trata radioValor2
orderBy = "no_autor";
break;
}
}
});
//estacia db_livroteca
db = openOrCreateDatabase("db_livroteca",MODE_PRIVATE,null);
//cria uma string para montar o sql
StringBuilder sqlLivros = new StringBuilder();
sqlLivros.append("SELECT * FROM tb_livros a ");
sqlLivros.append("INNER JOIN tba_estado b ON ");
sqlLivros.append(" b._id = id_estado");
if(orderBy != ""){
sqlLivros.append(" ORDER BY a."+orderBy+";");
}else{
sqlLivros.append(";");
}
//recupera os livros cadastrados
Cursor csrLivros = db.rawQuery(sqlLivros.toString(),null);
//estancia lvLivros
lv_Livros = (SwipeMenuListView)findViewById(R.id.lvLivros);
String[] fromLivros = {"_id","no_autor","no_titulo","no_edicao","no_editora","sg_estado","nu_ano_publicacao","nu_isbn"};
int[] toLivros = {R.id.tvIdLivrosLV,R.id.tvAutorLV,R.id.tvTituloLV,R.id.tvEdicaoLV,R.id.tvEditoraLV,R.id.tvEstadoLV,R.id.tvAnoPublicacaoLV,R.id.tvISBN};
adptLivros = new SimpleCursorAdapter(getBaseContext(),R.layout.model_lv_livros,csrLivros,fromLivros,toLivros);
//seta os valores na lvLivros
lv_Livros.setAdapter(adptLivros);
db.close();
}
Who can help me thank you, I could not evolve from there.
Thank you
Do you understand that your if will always go into Else?
– Pablo Almeida