Haga clic en el elemento de lista de un ListView no responde

Hola. Por código que aparece a continuación, mis elementos listview no responden al clic de ninguna manera. ¿Podría alguien ayudarme por favor? Gracias por adelantado.

public class ListaActivity extends Activity{ public final static String EXTRA_MESSAGE = "com.example.provacomunicazione.MESSAGE"; @Override public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState); setContentView(R.layout.lsta); Resources res = getResources(); String[] Authors = res.getStringArray(R.array.Lista_Nomi_E_Cognomi_Autori); ArrayList<String> Autori = new ArrayList<String>(); for (String temp:Authors) {Autori.add(temp);} Collections.sort(Autori); ArrayList<String> AutoriLetteraSelezionata = new ArrayList<String>(); for (String temp:Autori) {if (temp.charAt(0)=='A'){AutoriLetteraSelezionata.add(temp);}} ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,R.layout.textviewitem, AutoriLetteraSelezionata); ListView listView = (ListView) findViewById(R.id.listView1); listView.setAdapter(adapter); listView.setClickable(true); listView.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { CharSequence autore = "("+((TextView)view).getText()+")"; Intent i = new Intent(ListaActivity.this, SecondaryActivity.class); i.putExtra(EXTRA_MESSAGE, autore); startActivity(i); } }); 

}}

3 Solutions collect form web for “Haga clic en el elemento de lista de un ListView no responde”

Debe definir en todos los objetos secundarios en la lista de elementos (TextView, ImageView, etc.):

 android:clickable="false" android:focusable="false" android:focusableInTouchMode="false" 

Y para el elemento raíz RelativeLayout / LinearLayout y así, defina:

 android:clickable="false" android:descendantFocusability="blocksDescendants" android:focusable="false" android:focusableInTouchMode="false" 

Si no los define, ellos "atraparán" el evento click. Y si usted tiene un adaptador ListView personalizado, sólo tiene que comprobar que anula:

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

En mi caso un problema era, de hecho, que un ListView contenía HorizontalScrollView s.

HSV consume clics sobre elementos y no devuelve OnItemClick al ListView .

Solucioné el problema cuando escribí un OnClickListener dentro de un adaptador que devuelve una devolución de llamada a ListView . Vea aquí: https://stackoverflow.com/a/43653085/2914140 .

En el artículo cliente,

establecer cada elemento

 android:clickable="true" android:focusable="false" 

funciona para mi

  • ¿Cómo abrir una nueva actividad haciendo clic en un elemento de listview?
  • Acceder a objetos personalizados en una vista de lista
  • Cómo obtener OnClick () de los botones agregados mediante programación?
  • SetOnItemClickListener no funciona
  • OnClick listener a una imagen ListView - Android
  • Botón de imagen de Android Haga clic en no funciona en algunos teléfonos (Moto g2, Galaxy s2)
  • Evitar que ProgressDialog sea rechazado por onClick
  • Agregar un oyente a un widget selector de números
  • Parámetro de vista de Android para el método OnClickListener
  • ¿Cómo puedo borrar el texto de Android TextView?
  • ¿Cómo configurar onClickListener para partes separadas de la lista personalizada?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.