使用 iOS 模拟器,辅助功能标识符在辅助功能检查器中不可见

Accessibility Identifier not visible in Accessibility Inspector with iOS Simulator

我想在模拟器 (iOS 9.2) 中使用辅助功能检查器验证我的应用程序 运行 中的所有辅助功能标识符。

Accessibility Inspector 能够return 多个可访问性字段,但不能是标识符。

知道为什么以及如何看到它们吗?

您将永远无法(如果没有 Apple 的更改)在辅助功能检查器中看到此 属性,因为它并不是真正用于辅助功能。它与可访问性相关联是用词不当,与可访问性 API 在使用 UI Automation 识别用于自动化测试的元素方面的一般价值有关,因为可访问性信息是跨进程可用的。要获取此信息,您可以将 UI 元素转换为 UIAElements 并访问 name 属性,并将其传递给 NSLog。

编辑:是的,看看 Saleh 的回答。苹果在某个时候添加了这个!依赖这个要小心,Accessibility Inspector 最近对我来说非常不稳定。但是,如果您 3 年前没有回答这个问题,那么这个答案将是公认的答案!

我最近才开始使用可访问性功能,但至少从 Xcode9.1b2 开始,可访问性标识符 在可访问性检查器中可见。参见示例:

实际上是有办法的,Chris Prince 错过了解释如何到达它的机会。 你首先提出检查员。

上面的栏基本上使检查员专注于您需要检查的任何过程。在我们的例子中,它应该是模拟器。
编辑:正如达拉斯指出的那样,您必须单击左半部分以显示可能的目标。单击 Simulator 以让 Inspector 将其作为目标。

需要注意的是,模拟器似乎有自己的信息要显示。专注于模拟器将自动添加标识符并显示适当的可访问性信息。

瞧!

Xcode 太不稳定了,有时辅助功能标签或标识符不会显示在辅助功能检查器中。发生这种情况时,我只是

  1. 设置标签and/or标识符
  2. 编辑属性检查器下的显示文本,文本选择器正下方的值。完成构建后,我会将值改回。
  3. 或者添加一个 IBOutlet 然后删除它。

如果您只更改标签或标识符 Xcode 不会检测到它。

确保您已在后台打开 XCode (即使您使用的是 Accessibility Inspector 独立应用程序)