Teclado no se muestra cuando hago clic en edittextview en android?
Cuando hago clic en el edittextview, a continuación, algunas veces teclado mostrado o algunas veces el teclado no se muestran.
En android 2.1 muestra el teclado cuando hago clic en el edittextview
- EditText Alternativas en un Widget? Tiene que haber una forma
- La entrada del teclado de hardware pierde el foco
- Android deshabilita el espacio sólo para Edittext
- Android: KeyListener para un EditText que no recibe claves
- ¿Cómo comprobar si un EditText en Android tiene emoticon o no?
Pero cuando empiezo la misma aplicación en android 2.2, entonces no mostrar el teclado.
Ayúdame a mostrar ese problema.
- Android: ¿Es posible cambiar dinámicamente el color del borde de un EditText?
- Cursor no está visible en EditText cuando no hay texto allí
- Entrada enmascarada usando el Widget EditText en Android
- Generar Editar Texto Programaticamente en android
- Editado
- Establecer imagen en el lado izquierdo de EditText en Android
- Cómo establecer el tipo de entrada como contraseña a edittext programatically
- Excepción de puntero nulo - Obtener el valor de EditarTexto
OK, esto podría ser una respuesta tardía, pero funcionó.
He resuelto este problema en android 2.1 y 2.3.x (no probado en otras versiones de SDKs).
Noté una cosa extraña que cuando mi tecleo en el EditText no podía abrir el teclado, presioné el botón ATRÁS para demostrar un diálogo alerta y entonces lo cancelé (cerrado) él, y chasqué el EditText otra vez, ahora el teclado fue traído a Vida otra vez.
A partir de esto puedo concluir que el teclado siempre mostrará para el EditText si el EditText no posee previamente el foco (mostrar un diálogo de alerta sobre la vista EditText hará que EditText pierda el foco).
Así que llame a la función de abajo en su EditText cuando se trae a la frente:
mEditText.clearFocus();
o
parentViewThatContainsEditTextView.clearFocus();
Tuve un problema similar en Galaxy S3 (mostrar los controles de EditText en un PopupWindow – el teclado nunca estaba mostrando). Esto resolvió mi problema:
final PopupWindow popUp = new PopupWindow(vbl.getMainLayout()); [....] popUp.setFocusable(true); popUp.update();
No quería que EditText perdiera un foco usando editText.clearFocus()
. Vino a esta solución.
@Override public void onResume() { super.onResume(); if (Build.VERSION.SDK_INT < 11) { editText.clearFocus(); editText.requestFocus(); } }
En mi caso estaba en un PopupWindow
y simplemente necesitaba llamar a popupWindow.setFocusable(true)
Funciona como un encanto, en un caso si incluso desea ocultar en un clic de la edittextView.
textView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { displayKeyboard(); } }); private void displayKeyboard(){ if (textView != null) { InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); imm.toggleSoftInputFromWindow(textView.getApplicationWindowToken(), InputMethodManager.SHOW_FORCED, 0); } }
He aquí una posible solución:
editText.setOnFocusChangeListener(new OnFocusChangeListener() { @Override public void onFocusChange(final View v, final boolean hasFocus) { if (hasFocus && editText.isEnabled() && editText.isFocusable()) { editText.post(new Runnable() { @Override public void run() { final InputMethodManager imm = (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(editText,InputMethodManager.SHOW_IMPLICIT); } }); } } });
Código se basa en el siguiente enlace:
Posibles escenarios:
1) Al hacer clic en el EditText, por lo general el teclado aparece. Pero si presiona el botón de la tecla de retroceso en el emulador el teclado (no el teclado de la pantalla) dimisses.
2) En código, puede desactivar el teclado al hacer clic en EditText estableciendo un indicador.
InputMethodManager inputmethodmgr= (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); inputmethodmgr.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);
- ¿Dónde está el Editor Visual para Eclipse con el complemento ADT
- Android xml layer-list no se muestra correctamente en algunos dispositivos