在文本输入上检测活动的键盘语言-反应本机

时间:2018-06-21 20:26:29

标签: react-native

在多语言设备上,用户可以在其中切换键盘/语言。如何检测用户使用的键盘?例如,如果用户使用阿拉伯语和英语键盘。如何检测他使用的是阿拉伯语还是英语?

除了检查输入并确定他键入哪种语言之外,还有什么方法 OTHER

1 个答案:

答案 0 :(得分:6)

通过在React Native文档https://facebook.github.io/react-native/docs/keyboard.html中进行搜索,没有提供键盘实际语言的属性或函数,但是您可以通过在Java或Objective-C代码中实现一个函数来自己完成操作

您可以在此处了解如何添加您的个人本机代码并将其用于react native: https://facebook.github.io/react-native/docs/native-modules-android.html

然后只需在您的“ MyCustomKeyboard”类(java)上添加此方法:

@ReactMethod
public String getKeyboardLanguage() {
  InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
  InputMethodSubtype ims = imm.getCurrentInputMethodSubtype();
  String locale = ims.getLocale();
  return locale;
}