Android 我怎么知道键盘语言?(英/法)
我开发了一个短信发送应用程序,我想知道用户使用的语言。所以,当用户键入消息时,我如何知道他/她使用的语言?无法检索当前的键盘语言。Android不允许检索当前配置的语言,没有任何API。使用以下方法获取输入类型管理器:Android 我怎么知道键盘语言?(英/法),android,Android,我开发了一个短信发送应用程序,我想知道用户使用的语言。所以,当用户键入消息时,我如何知道他/她使用的语言?无法检索当前的键盘语言。Android不允许检索当前配置的语言,没有任何API。使用以下方法获取输入类型管理器: InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); 然后,使用以下方法选择要从中获取的内容: 或: 与此一起获取输入类型的区域设置: 您可
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
然后,使用以下方法选择要从中获取的内容:
或:
与此一起获取输入类型的区域设置:
您可以通过首先检测设备键盘的区域设置,然后从中获取
locale
对象来获取键盘语言。比如说,
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
InputMethodSubtype ims = imm.getCurrentInputMethodSubtype();
String localeString = ims.getLocale();
Locale locale = new Locale(localeString);
String currentLanguage = locale.getDisplayLanguage();
这里,
currentLanguage
将为您提供键盘语言。希望这有帮助。嗨,伙计,这个解决方案在API 11中可用,我想在android 2.3中使用它!如何在API 11.0之前使用您的低版本想法。这是一个很好的观点。很抱歉错过了。也许可以从android代码中读取,看看是否有办法克服旧版本的错误。当ims为空时,我们应该怎么做?