我想知道如何通过转到...来访问您通常访问的键盘列表。
设置>语言和键盘>输入法
我希望弹出键盘的“列表”,用户可以在我的应用程序中选择它。
答案 0 :(得分:2)
您可以执行以下操作来显示输入法选择器:
InputMethodManager imm = (InputMethodManager)getApplicationContext().getSystemService(INPUT_METHOD_SERVICE);
imm.showInputMethodPicker();
此外,您可能想知道是否有必要显示对话框。你可以这样做:
private static final String SERVICE_NAME = "com.yourpackage.keyboard.LatinIME";
private static final String IME_NAME = "com.yourpackage.keyboard/.LatinIME";
private boolean isMyKeyboardEnabled(){
List<InputMethodInfo> inputMethods = mImeManager.getEnabledInputMethodList();
for(InputMethodInfo inputMethodInfo : inputMethods){
if( SERVICE_NAME.equals(inputMethodInfo.getServiceName()) ){
return true;
}
}
return false;
}
private boolean isYourKeyboardSelected(){
return IME_NAME.equals(Settings.Secure.getString(getContentResolver(), Settings.Secure.DEFAULT_INPUT_METHOD));
}
在这种情况下,LatinIME是扩展InputMethodService
的类的名称。