我在Android应用程序中有一个带有一堆edittext输入的布局。
某些输入要求用户以俄语输入数据。 最后一个字段是电子邮件字段。电子邮件可以是英语(99%),但也可以包含国际信件。因此,在焦点上的输入字段上将键盘切换为英语将非常方便(能够切换到另一种语言)。
我试图强制使用英语,然后使用.post删除此限制:
emailEdit.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
emailEdit.setImeOptions(EditorInfo.IME_FLAG_FORCE_ASCII);
}
emailEdit.post(new Runnable() {
@Override
public void run() {
emailEdit.setImeOptions(EditorInfo.IME_ACTION_DONE);
}
});
}
}
});
但是这段代码只是强制键盘只能用英语切换到另一种语言。
有没有办法将inputtext软键盘切换到英文而没有“仅限英语”的限制?
答案 0 :(得分:1)
不,尤其是并非所有键盘应用都可以。大多数键盘都维护着自己的输入语言 - 这不是Android操作系统的概念。所以它无法影响它。并且可以通过不同的键盘以奇怪的方式解释该标志。大多数人会忽视它。有些人会将语言设置为英语。其他人会执行奇怪的翻译,例如将重音字符更改为基本字符。应用程序对Android上的键盘控制非常有限。