更改键盘输入语言

时间:2012-09-06 15:36:27

标签: android

我正在用两种不同的语言开发一个Android应用程序。当用户点击“更改语言”按钮时,它会要求从两种不同语言中选择语言选项,并根据该语言更改键盘。

例如:用户选择“阿拉伯语”语言,然后键盘输入语言应自动从英语更改为阿拉伯语。

请帮我解决此问题。

2 个答案:

答案 0 :(得分:8)

实际上并非如此。您可以使用stackoverflow上存在的许多解决方案来更改用户区域设置:

Here for examplehere for another

但是,这只会更改区域设置。您将遇到的问题是键盘本身就是一个应用程序。因此,您不能直接从您的应用程序更改它,也不能保证您的用户将拥有“阿拉伯语”字符集或插件或其他任何内容,因为他们使用的键盘应用程序。

如果您希望完成所需的操作,那么您唯一真实可靠的解决方案就是创建自己的键盘输入。否则,将在用户手中将键盘更改为阿拉伯语。

答案 1 :(得分:1)

(API 24+):如果您使用的是TextView / EditText,则可以致电TextView#setImeHintLocales(LocaleList)

textView.setImeHintLocales(new LocaleList(new Locale("zh", "CN")));

注意:如果您希望新的“提示”立即生效,则需要致电InputMethodManager#restartInput(View)