如何使用UIAutomation清除文本字段

时间:2014-01-10 00:59:27

标签: javascript ios ios-ui-automation

在我输入文本之前,我正在尝试确保文本字段清晰。存在一些状态保存问题,此文本字段不断填充。如果有一个简单的方法来清除它会很棒。请注意,此文本字段中没有清除按钮(小x)。我看到的唯一选择是使用键盘并反复按后退按钮,直到清除此文本字段。这也意味着我需要能够从文本字段中提取文本以了解它何时为空。无论如何,有没有人知道键盘上的键的名称是什么?我尝试过“退回”和“删除”,两者都没有用。

function typeNewUserNameAndGoNext()
{
    target.frontMostApp().mainWindow().scrollViews()[0].scrollViews()[0].textFields()[0].tap();
    target.frontMostApp().keyboard().buttons()["delete"].tap(); //what goes in place of delete?
    target.frontMostApp().keyboard().typeString("AutomatedTestUser");
    target.frontMostApp().mainWindow().scrollViews()[0].scrollViews()[0].buttons()[2].tap();    
}

显然,我会将后退按钮按回循环,直到文本字段被清除。

2 个答案:

答案 0 :(得分:0)

没关系,我是通过使用录音机得到的。

target.frontMostApp().keyboard().keys()["Delete"].touchAndHold(3.6);
只要你需要,你就可以按住它直到它删除所有内容。

答案 1 :(得分:0)

我个人更喜欢手动告诉字段将值设置为空字符串。

target.frontMostApp()主窗口()文本框()[0] .setValue( “”)。; //这对我来说总是最好的

这样做的缺点是它不会模拟推回键盘而不是直接操纵场。

但是,如果您有兴趣点击该按钮正确的次数,您可以使用循环并使条件str.length> 0

如果您需要确定UIA如何查看某些内容,那么使用乐器并慢慢点击某些内容非常有用,乐器也会为您显示键盘命令。