¿Cómo desactivar el teclado suave de Android para una actividad en particular?
Tengo una actividad con un EditText donde sólo necesito ingresar números.
Ahora, he definido el tipo de entrada para mi EditText para ser sólo el número y han elaborado un bonito teclado para que mi usuario utilice, sin embargo, también tengo que asegurarse de que el teclado no pop-up para mi usuario cuando hacen clic en El EditText.
- JQuery detecta si se mantiene pulsada la tecla del teclado
- Android ScrollView no se desplaza cuando el teclado está hacia arriba
- Mostrar el teclado virtual cuando se inicia la actividad
- Eclipse Android Emulator - Teclado no funciona
- Mostrar sólo el teclado numérico en la aplicación Ionic / Cordova
He intentado esconder el teclado a través del manifiesto añadiendo
android:windowSoftInputMode="stateAlwaysHidden"
En mi Manifiesto para la actividad en particular, pero esto no funciona para mí porque tan pronto como el usuario hace clic en el EditText el teclado aparece de nuevo.
He intentado hacer igual programmatically como así que
activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
Pero eso tampoco funciona. El teclado aparece cuando el usuario hace clic en EditText.
Lo único que funcionó fue establecer InputType a null para el EditText así:
EditText.setInputType(InputType.TYPE_NULL);
Pero no puedo usar esto porque permitirá a los usuarios que tienen un teclado conectado a su dispositivo introducir letras y otros símbolos en el campo EditText, mientras que quiero que todos usen específicamente sólo el teclado para ingresar datos en el campo.
También debo mencionar que actualmente estoy probando mi aplicación en android 2.1, pero me gustaría que mi solución funcionara en todas las versiones. Cualquier ayuda sería apreciada. Gracias por adelantado.
- Ocultar el teclado dentro del fragmento
- Ocultar teclado virtual al hacer clic en un botón
- ¿Cómo implementar emoji en mi aplicación de Android?
- Para Emacs, viaje largo para usar la tecla CTRL en Android
- Ocultar el teclado en fragmento en el exterior haga clic
- Android EditText ninguna entrada con external blueTooth Hardware Keyboard
- Cómo ocultar el teclado virtual
- Cómo utilizar Diccionario (como iphone NSDictionary) en android?
En Whitever Edittext necesita deshabilitar el teclado virtual, agregue un atributo en xml de ese texto de edición.
<EditText android:id=".." .. android:focusable="false" />
Detendrá la ejecución del teclado suave.
Sólo pensé que podría ser posible ampliar EditText y manejar el acceso a la Softkeyboard a través de allí y se encontró con esta cuestión que tiene una solución muy elegante a mi problema.
Simplemente seguí los pasos y esto manejó el teclado virtual perfectamente para mí. Espero que ayude a otros que se encuentran con este tema.
Usa el android:windowSoftInputMode="stateHidden"
en tu actividad en el archivo de manifiesto. Esto funcionará. No utilice el android: focusable = "false" para EditText a menos que no esté dispuesto a ingresar el texto. Si desea dar entrada a continuación, quite esa propiedad para el edittext en el archivo de diseño.
Si está utilizando, por ejemplo, ViewGroup, le permite bloquear el teclado virtual utilizando este método:
view.setDescendantFocusability(view.FOCUS_BLOCK_DESCENDANTS);
Gracias a esto la vista se enfocará ante cualquiera de sus descendientes.
- Android – ¿Cómo puedo ver una base de datos SQL creada en mi aplicación? Lo estoy ejecutando en el emulador de Android de Eclipse
- ¿Mipmap de Android?