所以在我的 nib 文件中,我启用了辅助功能并将文本字段的辅助功能标签设置为“txt” 我正在尝试根据可访问性名称查找此文本文件并更改其文本。
var target = UIATarget.localTarget();
var application = target.frontMostApp();
var mainWindow = application.mainWindow();
mainWindow.logElementTree();
// This works
var textField = mainWindow.textFields()[0];
//this doesn't work
var textField = mainWindow.textFields()["txt"];
textField.setValue("Hello");
我做错了什么吗?如何根据可访问性标签找到标签?
编辑:
我也对其他解决方案持开放态度,我试图避免根据索引获取文本字段
最佳答案
我有一个类似的问题,在代码中而不是在 nib 文件中设置可访问性标签值解决了我的问题。例如,我有一个需要在我的 UIAutomation 脚本中访问的 UITextField,我必须在 viewDidLoad 方法中设置可访问性标签值,如下所示。
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
testTxtField.accessibilityLabel = @"myTxtBox";
}
下面是我的 UIAutomation 脚本
var target = UIATarget.localTarget();
var application = target.frontMostApp();
var mainWindow = application.mainWindow();
mainWindow.logElementTree();
// This works
//var textField = mainWindow.textFields()[0];
// Now, this work too.
var textField = mainWindow.textFields()["myTxtBox"];
textField.setValue("Hello");
UIALogger.logMessage("Text field:" + textField.label());
关于iphone - iOS - UI 自动化通过可访问性标签获取文本字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8306076/