Edittext.settext () cambia el tipo de teclado a predeterminado
Tengo el código siguiente para mi formato edittext, puesto que puede tomar cualquier entrada que no estoy fijando cualquier tipo de entrada:
if (cardNumberEditText != null) { cardNumberEditText.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence s, int start, int before, int count) { int currSel = cardNumberEditText.getSelectionStart(); cardNumberEditText.removeTextChangedListener(textWatcher); . . cardNumberEditText.setText(formattedNumber); . . cardNumberEditText.setSelection(currSel); cardNumberEditText.addTextChangedListener(textWatcher); } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void afterTextChanged(Editable s) { } }); }
Así que inicialmente consigo el tipo de entrada por defecto que es ABC, ahora cuando lo cambio a? 123 (usando el botón ABC / 123? Toggel) y después de introducir algún número el teclado cambia de nuevo a ABC. Este código de costuras para trabajar bien en los dispositivos Samsung s3 y sywpe pero no en nexo con L y HTC uno
- Las pestañas TabHost de Android roban el enfoque al utilizar el teclado de hardware
- ¿Cómo comprobar si el teclado nativo / hardware se utiliza?
- Cómo agregar CustomView a mi teclado personalizado en android como el teclado GIF
- Android ADK - Trabajar en un gamepad
- El teclado de Android coloca la barra de pestañas en la parte superior
Cuando comento todo el código dentro de onTextChanged, funciona bien. Así que cuando investigué descubrí que culpable es cardNumberEditText.setText (formattedNumber);
No estoy configurando ningún tipo de entrada, sólo estoy usando la tecla de conmutación ABC /? 123 en el teclado para conmutar
Cualquier ayuda / sugerencia por qué esto está sucediendo (en pocos dispositivos) y cómo puedo corregirlo ??
- ¿Cómo puedo detectar si el teclado del software es visible en el dispositivo Android?
- Evitar que el teclado suave se deseche
- Accesos directos de teclado personalizados
- Cómo establecer / llamar a un nuevo método de entrada en Android
- No se puede ocultar el teclado virtual de Android incluso con el controlador de entrada
- Android: Añadir imageButton encima de un teclado personalizado
- Android: ListView no se desplaza con el teclado
- Encuentra el idioma del teclado Android actual
Finnaly lo consiguió trabajando, tuvo que combinar múltiples soluciones mencionadas en los comentarios anteriores
Puesto que el culpable era settext, encontré un reemplazo para él – append
Pero para usar append tuve que borrar edittext sin usar settext, este enlace al rescate
Así reemplazado
cardNumberEditText.setText(formattedNumber);
con
cardNumberEditText.getText().clear(); cardNumberEditText.append(formattedNumber);
Funciona como un encanto ahora
- ¿Cómo puede un juego creado en Unity funcionar en un dispositivo Android?
- Cómo encontrar la diferencia dos fechas en la aplicación android