Tecnologia do Blogger.
RSS

Re: [androidbrasil-dev] Dificuldades com ListView

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 - assim   
Produto 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ções


2012/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ÇÃO
public void CarregandoProdutos(int Categoria){
//Cria Array para criar a Lista de produtos e categorias
List<Produto> produtos = new ArrayList<Produto>();
Resources r = getResources();
//Carrega lista de produtos
    cursor = 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");
}


  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário