現在アクティブな入力方法をどのように判断しますか-ユーザーはテキスト編集フィールドを長押しすることで入力方法(ソフトキーボード)を変更できます-コードから、ユーザーが選択した入力方法をどのように判断しますか
10268 次
1 に答える
30
おそらくこれはもう必要ないでしょうが、誰かがこれに対する答えを求めているかもしれません。この行を使用して、使用中のインプット メソッドの文字列 ID を取得できます。
String id = Settings.Secure.getString(
getContentResolver(),
Settings.Secure.DEFAULT_INPUT_METHOD
);
現在のキーボードに関する詳細情報を取得したい場合は、次を使用できます。
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
List<InputMethodInfo> mInputMethodProperties = imm.getEnabledInputMethodList();
final int N = mInputMethodProperties.size();
for (int i = 0; i < N; i++) {
InputMethodInfo imi = mInputMethodProperties.get(i);
if (imi.getId().equals(Settings.Secure.getString(getContentResolver(), Settings.Secure.DEFAULT_INPUT_METHOD))) {
//imi contains the information about the keyboard you are using
break;
}
}
于 2011-04-19T22:10:52.377 に答える