android - attribute - ¿Cómo puedo convertir un código de clave en un carácter o cadena?
title html attribute (6)
La respuesta de Tod está casi completa, pero cuando desee establecer el texto de un texto de edición con este código de evento, debe agregar una pequeña cosa:
sample_et.setText((char)event.getUnicodeChar()+"");
¿Cómo convertir el keycode
en char
o string
?
Aquí está el código de ejemplo:
public boolean onKey(View v, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
//Log.d("EditText", "It''s Working...!" + event.getAction());
if (event.getAction() == 0) {
switch (v.getId()) {
case R.id.editText1:
Log.d("EditText", "In editText1");
if (text1.length() == 3)
{
text2.setText();
text2.requestFocus();
}
break;
case R.id.editText2:
Log.d("EditText", "In editText2");
if (text2.length() == 0)
text1.requestFocus();
break;
}
}
return false;
}
Prueba esto..
String s="";
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
EditText t=(EditText)v;
s=t.getText();
return false;
}
Si no tiene un objeto KeyEvent, puede usar esto en el código clave:
public void onKey(int primaryCode, int[] keyCodes) {
char c = Character.toChars(primaryCode)[0];
}
Utilice event.getNumber()
.
Utilizar
String.fromCharCode();
String.fromCharCode(65,66,67)
devuelve ABC
.
Consulte https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/fromCharCode .
char unicodeChar = (char)event.getUnicodeChar();