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
.
- EditText no recibe eventos clave TAB - stock soft vk
- La barra de navegación suave inferior se superpone a mi ListView
- Android ListView desplazamiento rápido con secciones: texto de sección demasiado largo
- Filtro personalizado de ListView da el elemento incorrecto seleccionado cuando se filtra
- Desactivar el selector Android ListView
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?
- Horizontal ScrollView en el elemento de vista de lista Android
- Error de Android - getListView () en ListFragment
- ListView establece la primera posición visible
- ¿Cómo hacer el desplazamiento de ListView más lento cuando se utiliza la función smoothScrollToPosition ()?
- ¿Cómo recuperar más de 1000 filas de Parse.com?
- ListView vs LinearLayout
- ListView MUY lento cuando se cargan imágenes (con Universal Image Loader)
- Reposicionar la barra de desplazamiento de ListView con relleno
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"