Android web görünümünde özel karakterler ('ä', 'é', '£' vb.) Yazmak istiyorum. Bu karakterler sanal KCM'ye dahil değildir (anahtar karakterler eşlemesi). Bu nedenle, karakterle ilişkili anahtar kodu alamıyorum ve bir KeyEvent oluşturulamıyorum.Android WebView'daki özel karakterleri gir
I güvenilir farklı yöntem: enstrümantasyon yöntemlerle
String t = "testàaâäù";
char[] charArray = t.toCharArray();
if (charArray.length > 0) {
KeyCharacterMap keyCharacterMap = KeyCharacterMap.load(KeyCharacterMap.VIRTUAL_KEYBOARD);
KeyEvent[] events = keyCharacterMap.getEvents(charArray);
}
// events is null, because some characters aren't include in KCM
// it never works in any case
: ACTION_MULTIPLE KeyEvent ile
instrumentation.sendStringSync("a"); // Display 'a'
instrumentation.sendStringSync("àâä"); // Display nothing
instrumentation.sendCharacterSync(KeyEvent.KEYCODE_H); // Display 'h'
// Instrumentation seems to use KCM for data entry
:
KeyEvent event = new KeyEvent(SystemClock.uptimeMillis(), String.valueOf("aàâä"), 0, 0);
focusedView.dispatchKeyEvent(event);
// Doesn't work with WebView, but works with other components such as EditText.
// I get this error: Unimplemented WebView method onKeyMultiple called from: android.webkit.WebView.onKeyMultiple
I veri işlemek için bir yöntem onKeyMultiple (WebView) uygulayabilir entry? Web görünümünde özel karakterler girmek için bir çözüm var mı? Kök veya klavye düzeni oluşturulmasını gerektirmeyen bir çözüme ihtiyacım var (kullanıcının klavyeyi seçmemesi gerekiyor).