Estoy intentando implementar las acciones de click y long click dentro de una list view.
Mi classe extiende de fragment, lo comento porque no se si tendrá algo que ver, ya que implementar estas 2 funciones no creo que sean muy complicadas.
El problema que tengo que después de implementar las 2 si hago un longClick después de soltar me hace la acción de click, es decir si hago long me hace las 2.
No se donde tengo el problema, este es mi código.
Código Java:
Ver original
@Override Bundle savedInstanceState) { mFotosAdapter = new GaleriaAdapter(getActivity()); // Leer todas las fotos del directoria y a�adirlas al array mFotosAdapter.addAllViews(storageDir); lv.setAdapter(mFotosAdapter); lv.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { int position, long arg3) { AlertDialog.Builder adb=new AlertDialog.Builder(getActivity()); adb.setTitle("Eliminar?"); adb.setMessage("Estas seguro que quieres eliminar " + position); final FotoRecord fotoItem = (FotoRecord) mFotosAdapter.getItem(position); adb.setNegativeButton("Cancel", null); adb.setPositiveButton("Ok", new AlertDialog.OnClickListener() { public void onClick(DialogInterface dialog, int which) { mFotosAdapter.remove(fotoItem); }}); adb.show(); return false; } }); lv.setOnItemClickListener(new android.widget.AdapterView.OnItemClickListener() { @Override int position, long id) { FotoRecord fotoItem = (FotoRecord) mFotosAdapter.getItem(position); Log.i("StarageDIR: ",storageDir ); Log.i("StarageDIR: ",fotoItem.getImageUrl() ); if (file.exists()) { UploaderFoto nuevaTarea = new UploaderFoto(getActivity()); nuevaTarea.execute(fotoItem.getImageUrl()); } Toast.makeText(getActivity(), "Has pulsado el elemento " + String.valueOf(position) + " de la lista.", Toast.LENGTH_LONG).show(); } }); return rootView; }
En algunos sitios comentan que para que funcione hay que poner en el xml correspondiente la propiedad android:longClickable="true", pero si lo pongo luego el click no me funciona.
Alguna ayudita! Gracias.