更改 Android 键盘语言

发布于 2024-11-02 19:38:07 字数 291 浏览 4 评论 0原文

如何更改 Android 键盘语言?

我设置了下面的代码来设置语言。 我从“设置”中设置了不同的语言并尝试设置英语。

Locale.setDefault(Locale.ENGLISH);
Configuration config = getResources().getConfiguration();
config.locale = Locale.ENGLISH;
getBaseContext().getResources().updateConfiguration(config, null);

How to change Android Keyboard language?

I have set below code to set language.
I set different language from Settings and trying to set English language.

Locale.setDefault(Locale.ENGLISH);
Configuration config = getResources().getConfiguration();
config.locale = Locale.ENGLISH;
getBaseContext().getResources().updateConfiguration(config, null);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

风吹短裙飘 2024-11-09 19:38:07

(API 24+):如果您使用的是 TextView/EditText,那么您可以调用 TextView#setImeHintLocales(LocaleList)

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

注意: 这适用于很少的键盘(在在撰写本文时,GBoard 可以工作,而 SwiftKey 则不能)。

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

(API 24+): If you are using a TextView/EditText, then you can call TextView#setImeHintLocales(LocaleList)

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

Note: This works on very few keyboards (at the time of writing, GBoard works and SwiftKey doesn't).

Note: If you want new "hint" to take effect immediately you need to call InputMethodManager#restartInput(View).

指尖上得阳光 2024-11-09 19:38:07

更改区域设置只会将资源(例如字符串、图像等)更改为为应用中特定区域设置定义的资源。要更改键盘支持的语言,您必须确保设备上安装了正确的输入法
(因为输入法本身也是一个应用程序,所以它会更改为相应的语言)。

例如,Nexus S上只有英文键盘,如果我需要支持其他语言的键盘,我需要找到输入法支持该语言并安装它。

为了确保用户有一个,您可以发出一些警报来吸引用户的注意力,或者通过 ACTION_XXX_SETTINGS Intent 将他们带到键盘设置活动。

Changing locale only changes the resources (e.g., strings, images, etc) to those defined for a specific locale in an app. To change the language supported by the keyboard, you have to make sure a proper input method is installed on the device
(because the input method itself is also an app, it will change to a corresponding language).

For example, there is only English keyboard on Nexus S, if I need a keyboard that supports other language, I need to find a input method that supports that language, and install it.

To make sure the user have one, you can make some alert to take the users' attention, or bring them to the keyboard settings activity by ACTION_XXX_SETTINGS intent.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文