studio programacion herramientas fundamentos con avanzado aplicaciones android listview clickable

programacion - Deshabilitar Click Event en los elementos de Android ListView



manual de android en pdf (9)

Administre el evento Click usando flags.

Mientras su reproductor de medios se está ejecutando, haga clic en falso haciendo clic en este método.

setClickable(false);

Cuando su reproductor multimedia se detiene o no se ejecuta o en el juego completo establece el indicador al valor predeterminado.

setClickable(true);

Intento desactivar varios eventos de clic en la vista de lista, decir después de presionar primer clic algunos medios se reproducen desde el servicio web, mientras se reproduce, es necesario hacer clickable==false otros elementos clickable==false , después de reproducir los medios, se puede hacer clic en otros elementos de la lista .

Lo que intento es llamar a setClickable(true) y setClickable(false) en el objeto ListView .


Agregue esto al xml

android:listSelector="@android:color/transparent"



En su método personalizado ArrayAdapter overide isEnabled como sigue

@Override public boolean isEnabled(int position) { return false; }


O de una manera simple para anular el registro y registrar OnItemClickListener puede ser una mejor idea.


Si lo que desea es solo para marcar los elementos en los que se puede hacer clic y mostrar el color del selector apropiado, solo use la línea

android: listSelector = "@ android: color / transparent"

en tu lista en el archivo de diseño (xml)


before onCreate:

private long mLastClickTimeListViewItem = 0;

Para evitar clics múltiples en elementos ListView

Después de onCreate dentro del oyente para listView, en mi caso lo siguiente:

listView.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView<?> parent, View view, int position, long id) { if (SystemClock.elapsedRealtime() - mLastClickTimeListViewItem < 1000){ return ; } mLastClickTimeListViewItem = SystemClock.elapsedRealtime(); //Do your remaining code magic below... .... .... } // end of onItemClick method }); // end of setOnItemClickListner


crear Adapter para esa lista, y anular este método

public boolean isEnabled(int position);

luego devuelve false cuando quiere deshabilitar el clic


las respuestas mencionadas no me funcionaron, así que utilicé list.setEnabled(false) Me funcionó