UIATableView 始终命名为“空列表”

发布于 2024-11-15 23:00:19 字数 746 浏览 3 评论 0原文

我正在尝试在 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 元素的名称不是“空列表”?是否有一个我没有在某处实现的委托?

I'm trying to set up some UIAutomation tests on the iPhone. Whenever I execute logElementTree() on the main window, all of my UIATableView elements have the name "Empty list." I have tried setting the name in the corresponding XIB file, but once data is loaded, the name is set to "Empty list" again. The below is an example of output from invoking 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}}]

As you can see, the table view is not empty. Does anyone know how I can ensure that the UIATableView element is given a name other than "Empty list?" Is there a delegate that I am not implementing somewhere?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

︶ ̄淡然 2024-11-22 23:00:19

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

You want to set an accessibilityLabel for the UITableView. In Xcode 4 at least, you can't set this property in Interface Builder -- so you will have to do it programatically.

命硬 2024-11-22 23:00:19

元素名称源自基础视图的可访问性属性。如果指定了标识符属性字符串,则该字符串将用作名称;否则,使用标签属性字符串作为名称。与标签方法对比。

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

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

打开Identity Inspector - 用户定义的运行时属性

Key Path: accessibilityIdentifier
Type: String
Value: <your identifier>

The element name is derived from the accessibility attribute of the underlying view. If an identifier attribute string is specified, that string is used as the name; otherwise, the label attribute string is used as the name. Contrast with the label method.

Don't use accessibility label to identify elements, use accessibility identifier.

In interface builder, the identifier can be set using runtime attributes:

open Identity Inspector - User Defined Runtime Attributes:

Key Path: accessibilityIdentifier
Type: String
Value: <your identifier>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文