Não posso ter dois cursores e dois SimpleCursorAdapter no mesmo projeto?

3 respostas
M

Tenho duas classes , cada uma carrega uma tabela e seta no SimpleCursorAdapter , só que estou tendou um problema:
Uma hora uma lista aparece uma hora a outra não , os dados sao carregados , porem nao sao mostrados no listview…Fica um espaço vago , não esta dando erro nenhum no LogCat e até deis uns Log.i e esta setando tudo direitinho…
Estou desesperado , espero ajuda , obrigado

3 Respostas

M

Desculpa o double post galera , mas é que estou desesperado , e nao acho nada sobre isso!

wagnerfrancisco

Você com certeza pode ter mais de 1 cursor e mais de 1 SimpleCursorAdapter no seu projeto.

Explique com mais calma e poste as partes relevantes do seu código para que possamos analisar!

M

O problema é o seguinte , onde era pra aparecer minha listview nao esta aparecendo...Esta um espaço vago...
Vou a parte do codigo ...

O metodo de pegar dados do banco e setar no list :
public void carregaDados(){ 
		   try{
			 bancoDados = openOrCreateDatabase("lanchonete", MODE_WORLD_READABLE, null);
			 cursor = bancoDados.query("pedido", campos, null, null, null, null, null);
		   
		   Log.i("TESTE", "SETOU VARIAVEIS ");
		   if(verificaRegistro()){
			   aaLista = new SimpleCursorAdapter(this, R.layout.mostradados, cursor, campos, new int[]{R.id.tvNome,R.id.tvPreco,R.id.tvQuantidade});
			   carrinho.setAdapter(aaLista); 
			   Log.i("TESTE", "IMPRIME DADOS ");
			   
			   
		   }
		   else{
			   mensagemExibir("Voce nao comprou nada ainda!", "Compras");
			  
		   }
		   }catch (Exception e) {
			// TODO: handle exception
			   Log.i("Teste", "Erro ao carregar dados: "+e);
		}
		   finally
			{
					bancoDados.close();
					cursor.close();
			}
			   
	   }
metodo verifica registro :
private boolean verificaRegistro(){
		   try{
		bancoDados = openOrCreateDatabase("lanchonete", MODE_WORLD_READABLE, null);
		cursor = bancoDados.rawQuery("SELECT * FROM pedido",null);
		if (cursor.getCount()!=0){
			cursor.moveToFirst();
			Log.i("TESTE", "VERIFICOU DADOS");
			return true;
			
		}
		else {
			return false;
		}
		   }catch (Exception erro) {
			// TODO: handle exception
			   Log.i("ERRO", "Erro ao verificar dados: " +erro);
			   return false;
			   
		}
		   finally
			{
					bancoDados.close();	
					cursor.close();
			}
		   
	   }
Variaveis setadas :
public static final String campos[] = {"nome","preco","quantidade","_id"};
	public static final String campos1[] = {"preco","quantidade"};
	public static final int MENU1 = Menu.FIRST;
	public static final int MENU2 = Menu.FIRST + 1;
	
	SQLiteDatabase bancoDados = null;
	Cursor cursor;
	SimpleCursorAdapter aaLista;
	ListView carrinho;
	TextView txtpreco;
	int codigopedido;
	float totalGeral;
	private List<String> dados2 = new ArrayList<String>();
Não esta dando nenhum erro =X , Se quiserem , posto a classe inteira... Obrigado pela resposta , abraços
Criado 24 de julho de 2012
Ultima resposta 25 de jul. de 2012
Respostas 3
Participantes 2