EditarTexto en un ListView
Tengo un ListView
y en ese ListView
tengo una fila con algunos TextViews
y EditTexts
en él. Cuando EditText
en cualquier parte de la fila quiero que el EditText
tome el foco para que pueda introducirse el texto.
El problema es que no puedo conseguir que esto funcione. Cuando EditText
el EditText
en el ListView
el OnItemClick
no responderá cuando hago clic en el ListView
.
- Imagen que se muestra en Android Studio pero no en el teléfono
- Establezca onItemClick en Adaptador personalizado ListView
- Cambiar en el adaptador para un ListView
- Pasar una lista de una actividad a otra
- Usando simpleCursorAdapter
Traté de usar focusable="false"
en el EditText
y me permitió hacer clic en el ListView
nuevo, pero no pude obtener el EditText
para obtener el foco, incluso después de establecer el focusable a true. A continuación, traté de usar el android:descendantFocusability="beforeDescendants"
en el ListView
pero no parecía hacer ningún cambio, todavía no funcionaría.
¿Alguien tiene una idea de lo que puedo hacer para que funcione?
- Reemplazar un fragmento con otro en ViewPager
- Agregar un separador de fecha para un SimpleCursorAdapter en Android
- Sin elástico Desplazamiento en ListView
- La altura de ListView llena toda la pantalla, aunque se define como wrap_content
- ListView no dispara setOnLongClickListener, sólo setOnItemClickListener
- Actualización de Android ListView con SimpleCursorAdapter
- Reciclar vistas en un listview, vale la pena?
- Android Cómo reciclar el mapa de bits correctamente cuando se utiliza RecyclerView?
Pruebe esto, debe permitirle hacer clic en una línea y enfocar el EditText (modificado desde esta respuesta SO ):
public void onItemSelected(AdapterView<?> listView, View view, int position, long id) { EditText yourEditText = (EditText) view.findViewById(R.id.youredittextid); listView.setDescendantFocusability(ViewGroup.FOCUS_AFTER_DESCENDANTS); yourEditText.requestFocus(); } public void onNothingSelected(AdapterView<?> listView) { // onNothingSelected happens when you start scrolling, so we need to prevent it from staying // in the afterDescendants mode if the EditText was focused listView.setDescendantFocusability(ViewGroup.FOCUS_BEFORE_DESCENDANTS); }
hazlo así
ListView listView = (ListView) findViewById(R.id.yourListViewId); listView.setItemsCanFocus(true); listView.setClickable(false);
es decir,
Después de obtener el objeto listview desde xml, deshabilite el clic en esta lista y pase el enfoque a las vistas secundarias
Puede agregar una propiedad como enabled="false"
en el diseño de la fila xml, y en onItemClickListener puede setEnabled(true)
y luego setFocusable(true)
, esto debería resolverlo.
- No puedo obtener mensajes sin conexión usando asmack api para la aplicación Gtalk
- Jersey on Jetty en Android lanza ContainerException: "No hay proveedor de WebApplication presente"