在模拟器中模拟打开/closures硬件键盘

有没有一种方法来模拟打开/closures模拟器中的“硬件”键盘? 我必须testing使用getResources()。getConfiguration()。keyboardHidden捕获的一些变化,这将有助于公平的:)

先谢谢你!

Solutions Collecting From Web of "在模拟器中模拟打开/closures硬件键盘"

为了增加Samuh的解释(我不知道 – 我知道我仍然可以通过改变方向来模拟打开/closures硬件键盘),你可以testing不带键盘的风景和键盘打开的风景之间的差异更改模拟器AVD的硬件configuration:AVD可以configuration为具有硬件键盘。 如果您的模拟器没有硬件键盘,则软键盘显示效果与您所期望的一样,并且在没有键盘的手机上以横向模式显示进入横向模式。

要将仿真器AVDconfiguration为无硬件键盘,请在AVD和SDKpipe理器工具中单击“新build”以添加新的AVD,select所需的SDK级别和其他选项,然后在硬件部分下添加“键盘支持”的新属性,并将其设置为“否”。 在AVD仿真器的“详细信息”对话框中,这将显示为“hw.keyboard = no”。

注意:您也可以通过以下方式修改现有的AVD来切换其键盘支持:

  1. 打开AVDpipe理器
  2. select您想要编辑的AVD
  3. 点击右侧的编辑…
  4. 硬件部分,点击右边的新build…
  5. 属性combobox中select键盘支持 ,然后单击确定
  6. 再次在“ 硬件”部分中 ,将“ 键盘支持 值”列更改为“否”
  7. 最后点击编辑AVD并退出pipe理器。

或者,您也可以编辑<avd path>/avd/<AVD device name>.avd/config.ini文件,并将hw.keyboard条目更改为yes或no。 在Mac和Linux上,一般是~/.android/ ,在Windows ~/.android/ /Users/<user-name>/.android/

根据Samuh的回答,这意味着您可以通过键盘打开(模拟器configuration了硬件键盘)或者在没有键盘的横向模式(仿真器没有configuration键盘)下检查处于横向模式的手机的行为。 这两个小的挫折是:1)你不一定会模仿在具有硬件键盘的设备上的横向模式,但键盘被隐藏(如果我理解正确的话),2)你将不得不运行两个独立的仿真器或至less两个AVD分别引导,以testing这两种不同的情况。

我曾经有一个问题(关于模拟键盘滑出/中),并期望使用模拟器的官方文档的仿真器控制台部分find模拟硬件事件中的东西,但不幸的是,我不能。 我认为如果滑动键盘input/输出,它的仿真只是一个硬件信号发送到内核将会更容易。

然后,我不得不通过按下Numpad上的PageUpbutton来改变设备方向的间接方法。 当你像这样改变设备的方向并且打印expression式的值(getResources().getConfiguration().hardKeyboardHidden == config.HARDKEYBOARDHIDDEN_YES)你会得到不同的纵向和横向值。 因此,改变模拟器的方向与使硬键滑出(不隐藏)和滑入(隐藏)有关。

看看你的情况是否有效…