>

Fórum

Fórum da RL System, voltado para analistas, programadores etc. Tudo sobre linguagem de programação e desenvolvimento Full Stack: Banco de Dados, Android, C#, Java, .NET, PHP, Node, Javascript, TypeScript, Front, HTML e muito mais.



QUERY AULA 5 ANDROID COM SQLITE


Boa Tarde...

O código esta identico ao do professor porem não apresenta erro e quando digito a letra ele não faz a busca ... pode nos ajudar?


final EditText txtBusca = (EditText) findViewById(R.id.txtBusca);
txtBusca.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {

String[] busca = new String[]{"%" + txtBusca.getText().toString() + "%"};

Cursor cursor = db.query("clientes", new String[]{"_id", "nome", "email"},"nome LIKE ?", busca, null, null, "_id DESC", null);

String[] campos = {"_id","nome"};
int[] ids = {R.id.txtId, R.id.txtNome};

SimpleCursorAdapter adt = new SimpleCursorAdapter(getBaseContext(), R.layout.model_clientes, cursor, campos, ids,0);
ListView ltwDados = (ListView) findViewById(R.id.ltwdados);
ltwDados.setAdapter(adt);
return false;
}
});



8 Respostas


Boa noite, Emilio você resolveu seu problema com o banco que não tava criando a tabela
tenho o mesmo problema e ainda não consegui resolver
pelo prompt de comando eu consigo criar a tabela mais via código não

qual é o curso que você ta vendo, o que eu to vendo é o Android-Day e só tem 3 aulas
pode me passar o nome certinho desse curso ai




Boa noite, o erro não seria que você está setando o _id e nome em txtId e txtNome ao invés de txvId e txvNome?




Boa Tarde !!

Marcelo eu declarei exatamente dessa forma, o erro não é na gravação e sim no txtBusca porem descobri qual a causa ....

O que acontece é que tenho ex: 10 cadastros e na hora que eu digito uma letra para buscar um valor com o metodo setOnKeyListener, ele nao funciona, ai pesquisando parece que não funciona nas versões acima do 5.1 e 6 e meu avd e meu celular estava com o 6.0.

O erro é na busca ou seja digitando uma pesquisa ele não da o refresh e trás a pesquisa, apos eu criar um avd 4.03 ele funcionou perfeitamente...


Porem fica a duvida como fazer esse metodo funcionar agora no 5.0, 5.1 e 6.0

Att




Emílio

Você testou no celular/tablet?

As vezes ele não funciona no teclado via software.

Mas no emulador com teclado via Hardware, pode ter exito.




Eu testei, via teclado , porem eu conectei meu celular um motoG 3 com android 6.0 e nao funciona a busca...




no meu tabem nao funcionou




Eu estou com o mesmo problema, no meu aparelho celular Samsung S5 Versão do Android 5.0 não efetua a busca e no AVD do Android Studio funciona perfeitamente.
Como arrumar este erro ?
Pois se vou vender um aplicativo preciso ficar de olho e talvez colocar um if para buscar a versão e arrumar este problema.




Você pode tentar ao invés de setOnKeyListener utilizar setOnEditorActionListener!