如何在Xcode4的界面构建器中为视图设置无障碍标签?

10

我希望使用KIF来编写我们iPhone应用的功能测试。它使用“可访问性标签”来识别正在测试的UI项。怎样在xcode4的接口构建器中设置视图的可访问性标签呢?


accessibilityLabel 是 VoiceOver 读取的。将其用作标识符是不好的做法。您应该使用 accessibilityIdentifer 属性,它不会被 VoiceOver 读取。 - Vlad
@Vlad 不是。在功能测试中使用它是最佳实践,因为这样您还可以测试您的应用程序是否可访问。 - Simon
1个回答

11

要通过编程设置变量,您可以像这样使用其属性:

UIButton *someButton = [[UIButton alloc] init];
someButton.titleLabel.text = @"Your Button's Text";
someButton.accessibilityLabel = @"SomeNSString";

在XCode 4内置的InterfaceBuilder中,您只需选择要具有可访问性标签的UI项。 "Identity Inspector"位于“Utility”窗格中,提供一个文本字段,您可以输入任何标签文本。

enter image description here


我在我的IB中看不到无障碍功能区 - 我有自定义类、用户定义的运行时属性和身份,但没有无障碍功能区。 - Simon
点击浏览,我可以看到大多数屏幕中都有无障碍功能,但在我的MainWindow.xib中没有 - 这是正常的吗?如果是,我该如何设置无障碍标签? - Simon
1
我认为UIWindow类没有辅助功能属性。窗口拥有辅助功能变量并不合理,因为通常它们只被iPhone使用,如果用户启用了“VoiceOver”。在iPhone上,只有一个窗口是可能的,因此识别窗口并不必要。从程序上讲,这是可能的。 - 0xJoKe
好的 - 没问题。我很惊讶我不能为其子视图设置它,但我猜我可以把它们放在单独的nib文件中。 - Simon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接