关于java:如果没有可用的硬件键盘,如何强制显示和隐藏虚拟键盘?

How to force to show and hide virtual Keyboard if no hardware keyboard is available?

如何检测到电话没有硬件键盘,只有在这种情况下强制显示虚拟键盘? 我怎么能隐藏它?

我尝试将焦点放在这样但是它不起作用:

1
2
View exampleView = (View)findViewById(R.id.exampleBox);
exampleView.requestFocus();

如果我强制这样的虚拟键盘,当硬件键盘可用时键盘也会出现,这没有意义。

1
2
InputMethodManager inputMgr = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
inputMgr.toggleSoftInput(0, 0);

最后但并非最不重要的是,我如何直接显示数字或手机键盘? (不是普通的键盘)

任何的想法?

谢谢!


我会说使用Configuration类hardKeyboardHidden来查看硬键盘是否已经关闭,如果没有,则打开软键盘