3

我正在尝试在 iPhone 上设置一些 UIAutomation 测试。每当我在主窗口上执行 logElementTree() 时,我的所有 UIATableView 元素都具有名称“空列表”。我已经尝试在相应的 XIB 文件中设置名称,但是一旦加载数据,名称再次设置为“空列表”。下面是调用 logElementTree() 的输出示例:

 4) UIATableView [name:Empty list value:rows 1 to 1 of 1 rect:{{x:0, y:64}, {width:320, height:416}}]
 5) UIATableCell [name:OfferCardTableViewCell value:(null) rect:{{x:0, y:160}, {width:320, height:416}}]
 6) UIAWebView [name:(null) value:(null) rect:{{x:0, y:160}, {width:320, height:418}}]
 6) UIAWebView [name:(null) value:(null) rect:{{x:320, y:160}, {width:320, height:418}}]
 6) UIAWebView [name:(null) value:(null) rect:{{x:640, y:160}, {width:320, height:418}}]

如您所见,表格视图不是空的。有谁知道我如何确保 UIATableView 元素的名称不是“空列表”?有没有我没有在某处实施的代表?

4

2 回答 2

1

你想为 UITableView 设置一个accessibilityLabel。至少在 Xcode 4 中,您不能在 Interface Builder 中设置此属性——因此您必须以编程方式进行。

于 2011-07-15T20:47:00.227 回答
1

元素名称派生自底层视图的可访问性属性。如果指定了标识符属性字符串,则将该字符串用作名称;否则,标签属性字符串用作名称。与标签法对比。

不要使用可访问性标签来标识元素,使用可访问性标识符。

在界面生成器中,可以使用运行时属性设置标识符:

打开Identity Inspector- User Defined Runtime Attributes

Key Path: accessibilityIdentifier
Type: String
Value: <your identifier>
于 2013-07-02T10:36:29.983 回答