如何改变Android键盘语言?
我已经设置了下面的代码来设置语言。我设置了与设置不同的语言,并试图设置英语语言。
Locale.setDefault(Locale.ENGLISH);
Configuration config = getResources().getConfiguration();
config.locale = Locale.ENGLISH;
getBaseContext().getResources().updateConfiguration(config, null);发布于 2011-04-19 11:57:06
更改locale只会将resources (例如字符串、图像等)更改为应用程序中为特定locale定义的内容。要更改keyboard支持的语言,必须确保设备上安装了适当的input method (因为输入方法本身也是一个应用程序,它将更改为相应的语言)。
例如,Nexus S上只有英语键盘,如果我需要一个支持其他语言的键盘,我需要找到一个支持该语言的input method,然后安装它。
为了确保用户有一个,您可以发出一些警告以引起用户的注意,或者通过ACTION_XXX_SETTINGS意图将他们带到键盘设置活动中。
发布于 2020-06-09 21:33:53
(API 24+):如果您使用的是TextView/EditText,则可以调用TextView#setImeHintLocales(LocaleList)
textView.setImeHintLocales(new LocaleList(new Locale("zh", "CN")));注意:在很少的键盘上工作(在编写本报告时,GBoard工作,SwiftKey不工作)。
注:如果您想要新的“提示”立即生效,您需要调用InputMethodManager#restartInput(View)。
https://stackoverflow.com/questions/5715072
复制相似问题