有没有办法模拟打开/关闭仿真器中的“硬件”键盘? 我必须测试使用getResources()。getConfiguration()。keyboardHidden捕获的一些更改,这将有助于公平很多:)模拟打开/关闭仿真器中的硬件键盘
预先感谢您!
有没有办法模拟打开/关闭仿真器中的“硬件”键盘? 我必须测试使用getResources()。getConfiguration()。keyboardHidden捕获的一些更改,这将有助于公平很多:)模拟打开/关闭仿真器中的硬件键盘
预先感谢您!
为了增加Samuh的解释(我不知道 - 好,知道我仍然可以模拟开/改变方向关闭硬件键盘) ,您可以通过更改模拟器AVD的硬件配置来测试不带键盘的横向和键盘打开的横向之间的差异:AVD可以配置为具有硬件键盘或不具有硬件键盘。如果您的模拟器没有硬件键盘,则软键盘会如您所期望的那样出现,并且应该以横向模式显示进入横向模式,就像在没有键盘的手机上进行横向模式一样。
配置仿真器AVD充当如果没有硬件键盘,在AVD & SDK管理器工具,单击“新建”添加新的AVD,选择您所需的SDK水平和其他选项,硬件下部分,为“键盘支持”添加一个新属性,并将其设置为“否”。在AVD仿真器的“详细信息”对话框中,这将显示为“hw.keyboard = no”。
注意:您还可以修改现有的AVD切换它的键盘支持:
或者,您也可以编辑<avd path>/avd/<AVD device name>.avd/config.ini
文件,并将hw.keyboard
条目更改为yes或no。在Mac和Linux上,一般是~/.android/
,以及Windows上的/Users/<user-name>/.android/
。
根据Samuh的回答,这意味着您可以通过键盘打开(模拟器配置硬件键盘)或横向模式(不带键盘)来检查手机处于横向模式的行为(模拟器配置为不带键盘) 。这两个小的挫折是1)你不一定会模仿在一个设备上如何在横向模式下看,但是键盘是隐藏的(如果我理解正确的话),以及2)你会有运行两个单独的模拟器或至少两个AVD单独引导,以测试这两种不同的情况。
我有一次这个问题(关于模拟键盘滑出/在),并期待在模拟器的官方文档的Simulating Hardware events using Emulator console部分找到的东西,但不幸的是我不能。我认为如果将键盘滑入/滑出并且它的仿真只是一个硬件信号发送到内核将会更容易。
我不得不通过按下Numpad上的PageUp按钮来改变设备方向的间接方法。当您像这样更改设备的方向并打印表达式(getResources().getConfiguration().hardKeyboardHidden == config.HARDKEYBOARDHIDDEN_YES)
的值时,您会得到不同的纵向和横向值。因此,改变模拟器方向与使硬键盘滑出(不隐藏)和滑入(隐藏)有关。
看看你的情况的作品...
@jpmcosta:你确定Windows路径是否准确?这个路径听起来像Mac(我已经有了〜/ .android)。 Windows不是'C:\ Documents and Settings \ \ .android \'?也许最近的Windows版本已经将其改为'C:\ Users \ \',但在这种情况下,您应该使用'\'而不是'/',以避免与其他平台混淆。 –
Joe
2012-01-27 22:35:45