我遇到问题只是通过辅助功能标签获取UIButton。
以下是我如何设置UIButton的可访问性:
[_dobblerButton setAccessibilityLabel:@"dobbler_button"];
[_dobblerButton setAccessibilityTraits:UIAccessibilityTraitButton];
[_dobblerButton setIsAccessibilityElement:YES];
以下是我试图获得它的方式:
_usernameField = [SLButton elementWithAccessibilityLabel:@"dobbler_button"];
[_usernameField logElement];
日志调用会引发错误:
Unknown location: Unexpected exception occurred SLUIAElementInvalidException for reason: Element '<SLButton description:"dobbler_button">' does not exist.
我尝试使用SLButton elementMatching
打印出所有辅助功能标签,并且dobbler_button肯定会显示出来。
请告诉我是否还有其他任何内容可以帮助您调试此内容。
答案 0 :(得分:2)
事实证明,按钮的包含视图已启用了辅助功能。根据{{3}}
,这不起作用如果您的应用程序显示包含用户与之交互的其他元素的自定义视图,则需要单独访问所包含的元素。同时,您需要确保无法访问容器视图本身。原因是用户与容器的内容进行交互,而不是与容器本身进行交互。
答案 1 :(得分:0)
我认为你可以通过转到你的.storyboard文件(或你设计UI的任何地方)点击按钮来实现这个目标。它应该在右边的一个菜单中。