Implementar el evento click en un ListView

Cómo programar un Click en un item de un ListView Android

Video: Implementar el evento click en un ListView

Cómo implementar un SetOnItenClickListener en un ListView, lo usaremos para mostrar el detalle de un producto elegido. Paso de variables entre actividades

Cómo implementar un SetOnItenClickListener en una ListView

lo usaremos para mostrar el detalle de un producto elegido. :

Tareas a desarrollar:

  1. Ordenar el código de sincronización JSON - SLite
  2. Implementación del evento Clic para cada item del ListView
  3. Paso de variables entre actividades
  4. Display de datos en la actividad producto.

Parte del código:

Click en listview 

lista.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
                Cursor item = (Cursor) lista.getItemAtPosition(i);
                int id= item.getInt(item.getColumnIndexOrThrow("_id"));
                //Toast.makeText(getApplicationContext(),"id: "+id,Toast.LENGTH_LONG).show();

                startActivity(
                        new Intent(getApplicationContext()
                                ,ProductoActivity.class)
                        .putExtra("id",id)
                );
            }
        });

Display de datos en ProductoActivity

public class ProductoActivity extends AppCompatActivity {

    private DbManager db;
    private Cursor c;
    private ImageView _foto;
    private TextView _nombre, _descripcion,_precio,_stock;
    private ProgressBar _pb;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_producto);
        _foto = findViewById(R.id.foto);
        _nombre = findViewById(R.id.nombre);
        _descripcion = findViewById(R.id.descripcion);
        _precio = findViewById(R.id.precio);
        _stock = findViewById(R.id.stock);
        _pb = findViewById(R.id.pb);

        int id = getIntent().getExtras().getInt("id");
        //Toast.makeText(getApplicationContext(),"ID : "+id,Toast.LENGTH_LONG).show();

        db= new DbManager(getApplicationContext());


        c = db.getCursor("productos","_id="+id);
        if(c.moveToFirst()){
         do{
             _nombre.setText(c.getString(c.getColumnIndexOrThrow("nombre")));
             _descripcion.setText(c.getString(c.getColumnIndexOrThrow("descripcion")));
             _precio.setText(c.getString(c.getColumnIndexOrThrow("precio")));
             _stock.setText(c.getString(c.getColumnIndexOrThrow("stock")));

             Picasso.with(getApplicationContext())
                     .load("http://yyy.yyy.yyy.yyy/QR/img/"+c.getString(c.getColumnIndexOrThrow("foto")))
                     .into(_foto, new Callback() {
                         @Override
                         public void onSuccess() {
                             _pb.setVisibility(View.GONE);

                         }

                         @Override
                         public void onError() {
                             _pb.setVisibility(View.GONE);

                         }
                     });


         }while (c.moveToNext());
        }

    }
}

 


Implementar el evento click en un ListView

¿Quieres tener acceso al código fuente completo del proyecto final?

Contenido premium

COMPRAR AHORA

© Todos los derechos reservados | codea.app | Comunidad de programación web y desarrollo de aplicaciones móviles | Perú 2019