Amigo, fiz um exemplo simples. Espero que te ajude.
Estou enviando em anexo pra você.
Abraço.
--
Em 11 de setembro de 2012 14:00, Maicon Strey <mstrey@gmail.com> escreveu:
Posso estar errado mas no teu Menu.java na linha 121 eu faria assim:Produto p = produtos.get(arg2);Outra coisa, por boas práticas de programação é melhor renomear as variáveis do teu programa. Tu sabes o que é esse arg2 que eu coloquei ali? se não sabe é melhor dar uma estudada melhor, mas ele é o numero do item que foi clicado. se o usuário clicar no item 3 da lista essa variável vai retornar '3'. para uma melhor compreensão é aconselhável renomear as variáveis e nesse caos ficaria melhor algo como "position" ou "listItem".Enfim, vê se isso vai te ajudar.
Maicon Strey
Novo Hamburgo - RS - Brasil
------------------------------------------------------Linux user: #525086Frase de todos os dias: "Se não mandar o log eu não ajudo!"
2012/9/11 Roversi <matheusroversi@gmail.com>Então, consegui fazer ele entrar no evento click, porém dá um erro: "Sorry! The application Change numbers (process com.hamdyghanem.httprequest) has stopped unexpectedly. Please try again."No evento click ficou assim:Em anexo estou colocando o Log de erro qdo executa o click com os 3 principais arquivos.. Menu.java, Produtos.java e ProdutosAdapter.javaAguardo aqui na esperança
Em terça-feira, 11 de setembro de 2012 09h45min16s UTC-3, Clebão escreveu:Dentro do lv.setOnItemClickListener existe o metodo public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) {}Note que exite 4 parâmetros, o primeiro é o Adapter, o segundo é a view, o terceiro a posição do que foi clicado e o quarto é o id.Não sei como foi construído o seu ProdutoAdapter, é basiscamente realizar um cast + ou - assimProduto prod = (Produto) arg0.get(arg2);Mas para isso vai depender de como seu ProdutoAdapterfoi construido.
Em 10 de setembro de 2012 23:49, Murilo Ângelo <muriloangelo10@gmail.com> escreveu:
posta o log cara, passei por um problema exatamente igual, mas como vc esta dizendo que nem no evento entra, precisaremos de mais informações2012/9/10 Roversi <matheusroversi@gmail.com>
Pessoal estou com dificuldades em pegar o id de um item de um ListView, criei uma função onde carrega uma um listview com produtos do banco de dados, porém não estou conseguindo fazer o click do listview pegar a id, nem entrar no evento.. alguém sabe me dizer onde estou errando?
// FUNÇÃOpublic void CarregandoProdutos(int Categoria){//Cria Array para criar a Lista de produtos e categoriasList<Produto> produtos = new ArrayList<Produto>();Resources r = getResources();//Carrega lista de produtoscursor = mySQLiteAdapter.queryProdutos(Categoria);//String[] from2 = new String[]{SQLiteAdapter.KEY_ID, SQLiteAdapter.KEY_CONTENT1, SQLiteAdapter.KEY_CONTENT2};cursor.moveToFirst();while(!cursor.isAfterLast()) {//Log.i("", cursor.getString(0)+"/"+cursor.getString(1)+"/"+cursor.getString(2));int resId = r.getIdentifier("prato"+cursor.getString(0),"drawable", getPackageName());produtos.add(new Produto(cursor.getString(0), cursor.getString(1), resId, cursor.getString(2)));cursor.moveToNext();}cursor.close();ProdutoAdapter adapter = new ProdutoAdapter(getApplicationContext(),produtos);//Amarra um objeto ListView com o ListView declarado no XML.ListView lv = (ListView) findViewById(R.id.Lista);lv.setAdapter(adapter);Log.i("onitemclicklistener","inicio");lv.setOnItemClickListener(new OnItemClickListener() {public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) {Log.i("listview","click");}});Log.i("onitemclicklistener","fim");}
Analista-Programador






0 comentários:
Postar um comentário