studio personalizado example ejemplo custom java android android-listview listactivity

java - personalizado - Click no está funcionando en Listitem Listview android



listview android studio (10)

¿Estás usando un adaptador personalizado? e inflar el diseño con un botón o cualquier vista que consuma el foco de vista de lista de lista como elemento secundario, entonces no funcionará obviamente. asegúrese de establecer

android:focusable="false"

a tal vista en el archivo xml. Espero que esto funcione para usted.

Implementé la vista de lista de Android con ListActivity . Aquí tengo el problema de que cuando hago clic en el elemento de la lista, no se realiza ninguna acción cuando tampoco viene el color del flash, que es el color naranja. Entonces, ¿tienes alguna idea sobre esta amable respuesta a mi pregunta?

@Override protected void onListItemClick(ListView l, View v, int position, long id) { super.onListItemClick(l, v, position, id); Toast.makeText(getApplicationContext(), "msg msg", Toast.LENGTH_SHORT) .show(); }

Puse este código también en la actividad de lista principal.


¿Ha establecido el modo de selección de ListView a SINGLE:

listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);

Y si tiene cualquier vista de imagen o vista de texto o botón en el elemento de la lista, haga que no se puedan enfocar (en su clase de Adaptador):

yourButton.setFocusable(false); yourButton.setFocusableInTouchMode(false);


Eclipse me sugirió que agregue textIsSelectable="true" a mis TextViews en el diseño xml que se utilizó para la vista de lista.

Bueno, si desea hacer clic en los elementos de la lista, entonces no debe agregar esas etiquetas.


En realidad, hay un parámetro destinado a evitar que las vistas de los niños se centren, solo agregue lo siguiente en el diseño principal:

android:descendantFocusability="blocksDescendants"

Como explica la documentación:

ViewGroup impedirá que sus descendientes reciban el foco.


Establezca esto en su archivo javascript de listactivity

listview1.setFocusable(false);


Lo primero que debe tener en cuenta aquí es que cada vez que haya elementos Clickable como botones o ImageButtons presentes en su elemento ListView , toman el control de los eventos click. Y entonces su ListView no tendrá la oportunidad de aceptar el evento click.

Lo que simplemente tiene que hacer es establecer el atributo ImageButton en falso para el Button o ImageButton que tiene en su ListView. Pero aún así funcionarán sin ningún problema y también su ListView onListItemClick también funcionará.

Prueba esto,

<Button android:id="@+id/textsize_increaser" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@+id/back_button" android:focusable="false" android:text=" A + "/>

Aquí he agregado este android:focusable="false" y funciona bien. intentalo.


asegurate de que eres

  1. No usar la vista de desplazamiento con la vista de lista
  2. No está utilizando la vista de desplazamiento en el diseño de su elemento de fila para la vista de lista

Si la vista de desplazamiento está presente en cualquiera de los lugares anteriores, quítelo


consulte esta publicación para obtener una solución:

Click no está funcionando en Listitem Listview android

View v = parent.getChildAt(position); parent.requestChildFocus(v,view); v.setBackground(res.getDrawable(R.drawable."Some drawable for clicked row")); int count = parent.getChildCount(); for(int i=0; i<count; i++) { if(i!=position) { v = parent.getChildAt(i); v.setBackground(res.getDrawable(R.drawable."some drawable for not clicked row)); } }


listItemButton.setFocusable(false); listItemButton.setFocusableInTouchMode(false);

Configure lo anterior en su adaptador . No es workiXMLin XML


listview.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View v, int pos, long id) { Toast.makeText(v.getContext(), exm.get(pos).getDefinition(), Toast.LENGTH_SHORT).show(); } });