Android输入法相关(一)

Android输入法相关(一)

本篇文章简单介绍下Android 系统中输入法相关的一些简单方法.

1: 获取当前默认输入法

/**

  • @param context
  • @return
  • 获取默认输入法
    */
    private static String getDefaultImePackage(Context context) {
    String input = Settings.Secure.getString(context.getContentResolver(),
    Settings.Secure.DEFAULT_INPUT_METHOD);
    Log.i(“xxxxx”, “getDefaultImePackage: “+input);
    if (!TextUtils.isEmpty(input)) {
    return input.split(”/”)[0];
    }
    return “”;
    }

通过DEFAULT_INPUT_METHOD获取到的是com.baidu.input_oppo/.ImeService

另外我们可以通过adb直接获取 Settings.Secure.DEFAULT_INPUT_METHOD。
C:\Users\zj>adb shell settings get secure default_input_method
com.sohu.inputmethod.sogou/.SogouIME

2: 获取所有的输入法

输入法管理器(InputMethodManager)是Android系统提供的一个类,用于管理设备上的输入法。
它可以用来显示或隐藏输入法,切换输入法的状态,以及监听输入法的各种事件。

  1. getSystemService(Context.INPUT_METHOD_SERVICE)获取输入法管理器
  2. getEnabledInputMethodList()用于获取已启用的输入法列表

public static List getInputMethodList(Context context){
InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
if (imm == null) {
return new ArrayList<>();
}
List enabledInputMethodList = imm.getEnabledInputMethodList();
for (InputMethodInfo inputMethodInfo : enabledInputMethodList) {
Log.i(“xxxxx”, "getList: "+inputMethodInfo.getPackageName());
}
return enabledInputMethodList;
}

3: 展示输入法选择框.

showInputMethodPicker()用于显示法选择器。
当调用该方法时,系统会弹出一个对话框,显示当前可用的输入法列表供用户选择。

public static void showInputMethodPicker(Context context) {
try {
InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
if (imm != null) {
imm.showInputMethodPicker();
}
} catch (Throwable e) {
e.printStackTrace();
}
}

  • 8
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值