如何在不关闭对话框的情况下使用 Appium for IOS 隐藏键盘?

Posted

技术标签:

【中文标题】如何在不关闭对话框的情况下使用 Appium for IOS 隐藏键盘?【英文标题】:How to hide keyboard without closing the dialog box using Appium for IOS? 【发布时间】:2017-01-10 16:52:49 【问题描述】:

我出现了一个对话框,在使用hideKeyboard(); 关闭键盘时,所有表单都已关闭,我返回主页,因此我无法继续填充其他数据的场景。

这里是屏幕:

【问题讨论】:

【参考方案1】:

只需在对话框中使用 UIScrollView,并设置滚动视图类 TPKAScrollViewController。 Download class

【讨论】:

在哪一步?当我打开对话框时,我有大约 10 步填充数据? UIScrollView 在这里不起作用,因为它在自动化范围内。 对不起,在我不知道之前我没有使用它 你必须为你的控制器创建这样的结构:UIView -> UIScrollView -> 你的带有对话框的视图 我只是在编写自动化脚本,应用程序已经准备好了!只是为了做一些测试!【参考方案2】:

您可以先使用 driver.sendkey() 填写字段,然后点击键盘的下一步按钮将驱动程序切换到下一个字段,直到最后一个字段。在最后一个字段中,您将完成按钮,然后您可以点击该按钮。

【讨论】:

【参考方案3】:

hideKeyboard(); 的默认“策略”是在键盘外点击,但可以改为按键盘上的某个键。

请参阅 java-client 文档(假设您使用的是 java-client?)以获取可用的 hideKeyboard 策略:http://appium.github.io/java-client/io/appium/java_client/ios/IOSDeviceActionShortcuts.html

如果您的应用程序的键盘有一个“下一步”按钮来关闭键盘,那么您可以使用:driver.hideKeyboard("Next");

【讨论】:

好的,谢谢您的建议!我会尝试:driver.hideKeyboard("Return");

以上是关于如何在不关闭对话框的情况下使用 Appium for IOS 隐藏键盘?的主要内容,如果未能解决你的问题,请参考以下文章

如何在不关闭先前活动的情况下从通知中打开对话框样式的活动?

如何在不覆盖的情况下连续打开对话框

如何在对话框中关闭 jQuery 对话框?

在不使用 adb 的情况下使用 Appium 和 Webdriverio aka wdio 获取您的应用程序的许可

如何在不关闭套接字的情况下向主机发送 FIN 标志

如何在不使用对话框的情况下在操作栏上方显示视图?