Estoy tratando de crear un EditText
con auto-capitalización y corrección automática implementada. He descubierto manualmente cómo agregar InputFilter
para permitir el uso automático de mayúsculas, aunque esto solo funciona después de escribir la primera letra, y no he tenido suerte con la corrección automática (intenté crear un filtro de entrada que usara AutoText
, pero No estoy seguro de cómo funciona todo eso). Idealmente, podría usar EditText.setInputType (...) para manejar todo, pero hasta ahora esto no ha funcionado. ¿Hay una manera de lograr esto? Mi intento fallido se muestra a continuación (obtengo una entrada normal).¿Cómo configuro múltiples tipos de entrada en EditText en Android?
EditText mEditText = new EditText(this);
int inputType = InputType.TYPE_CLASS_TEXT;
if (auto_capitalize) {
inputType = mEditText.getInputType() | InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS;
}
if (auto_correct) {
inputType = mEditText.getInputType() | InputType.TYPE_TEXT_FLAG_AUTO_CORRECT;
}
mEditText.setInputType(inputType);
Tenga en cuenta, sólo estoy interesado en soluciones para la creación de este EditText
en código - no a través de XML.
Editar
encontré nueva documentación sonido que describe TextKeyListener, sin embargo después de tratar de usar esto:
mEditText.setKeyListener(new TextKeyListener(TextKeyListener.Capitalize.CHARACTERS, true));
y el uso de la idea de @ farble1670 de utilizar setRawInputType
, a fin de no afectar a la KeyListener
s, todavía no hay cambios en el texto.
Gracias, esto me llevó a una nueva dirección, y encontré el 'TextKeyListener'. Lo único es que eso tampoco parece funcionar ... – Phil