重要
我正在开发一个应用程序,其中我使用InputMethodService
为emojies集成了虚拟键盘。
现在,我可以从我的虚拟键盘切换到默认软键盘,如下所示:
emojiKeyboard.switchToPreviousInputMethod();
其中emojiKeyboard
是EmojiKeyboardService
类extends InputMethodService
方法switchToPreviousInputMethod()
如下:
public void switchToPreviousInputMethod() {
Vibrator vib = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
vib.vibrate(25);
try {
previousInputMethodManager.switchToLastInputMethod(iBinder);
} catch (Throwable t) { // java.lang.NoSuchMethodError if API_level<11
Context context = getApplicationContext();
CharSequence text = "Unfortunately input method switching isn't supported in your version of Android! You will have to do it manually :(";
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
}
所以,切换到我的虚拟键盘很头疼。有没有办法以编程方式进行?因为我可以再次从设备设置中进行设置。
但是,我们知道用户每次切换到默认软键盘时都不应该进行设置。
请指导。希望得到肯定的回答。
感谢。