Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Estou com dúvida no curso de Android: Aplicações e armazenamento de dados - Parte 1, no exercício 4 do capítulo Completando o cadastro.

Olá a todos, eu fiz a função de deletar porém ele não deleta, eu coloquei a função pra carregar a lista logo depois então creio q n seja esse o problema, creio q ele não está pegando o Id correto.

função pra pegar o id:

lista.setOnItemLongClickListener(new OnItemLongClickListener() {

            @Override
            public boolean onItemLongClick(AdapterView<?> adapter, View view,
                    int posicao, long id) {
                    aluno = (Aluno) adapter.getItemAtPosition(posicao);
                    Toast.makeText(ListaAlunos.this,
                            "Clique na posição " + posicao, Toast.LENGTH_SHORT)
                            .show();
                return false;
            }
        });

contextMenu:

public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { MenuItem ligar = menu.add("Ligar"); MenuItem enviarSMS = menu.add("Enviar SMS"); MenuItem navSite = menu.add("Navegar no Site"); MenuItem deletar = menu.add("Deletar"); deletar.setOnMenuItemClickListener(new OnMenuItemClickListener() {

@Override public boolean onMenuItemClick(MenuItem item) { AlunoDAO dao = new AlunoDAO(ListaAlunos.this); dao.deletar(aluno); carregaLista(); dao.close(); return false; } }); MenuItem verMapa = menu.add("Ver Aluno no Mapa"); MenuItem enviarEmail = menu.add("Enviar Email"); super.onCreateContextMenu(menu, v, menuInfo); }

1 resposta
solução

galera já encontrei o problema, está na hora de criar a tabela no banco faltou colocar autoincrement

id INT PRIMARY KEY AUTOINCREMENT NOT NULL

agora o ID está ok =D