Ios 是否设置按钮';s UIAccessibilityTrait删除单词;按钮“;从它';什么是可访问标签?

Ios 是否设置按钮';s UIAccessibilityTrait删除单词;按钮“;从它';什么是可访问标签?,ios,uiaccessibility,Ios,Uiaccessibility,我刚才遇到了一个奇怪的情况。我在我们的应用程序中有一个容器视图,点击时需要读取所有视图,但只有一个视图可以单独访问。因为有些视图是具有自己子视图的复杂视图,所以我设置ADA逻辑来读取视图的accessibilityLabel(如果有),如果没有,则从子视图构建一个 今天,我们在阅读帮助按钮时必须将“按钮”添加到帮助按钮中,因为容器视图被点击。因此,我只是在标签的accessibilityLabel中添加了“button”一词,一切正常。然后我意识到,这可能会在单独点击时将其更改为“更多信息按钮”

我刚才遇到了一个奇怪的情况。我在我们的应用程序中有一个容器视图,点击时需要读取所有视图,但只有一个视图可以单独访问。因为有些视图是具有自己子视图的复杂视图,所以我设置ADA逻辑来读取视图的accessibilityLabel(如果有),如果没有,则从子视图构建一个

今天,我们在阅读帮助按钮时必须将“按钮”添加到帮助按钮中,因为容器视图被点击。因此,我只是在标签的accessibilityLabel中添加了“button”一词,一切正常。然后我意识到,这可能会在单独点击时将其更改为“更多信息按钮”,因为我已将按钮的accessibilityTraits属性设置为
UIAccessibilityTraitButton

然而,令我惊讶的是,它正确地将其解读为“更多信息按钮”。苹果是否在accessibilityLabel中检测到无关的“按钮”,并在特征设置为按钮时将其删除?当按钮的特征设置为标签时,他们是否也会从按钮中删除无关的“标签”?我觉得这非常酷,如果这是它的工作方式的话,那么苹果的工程师部分的想法是不可思议的


编辑:如果是这样做的,有人能告诉我这是在哪里记录的吗?我找不到它,尽管我目前仍在处理此修复程序,因此我没有进行我所能做的最深入的搜索。

我现在有一些时间做一些适当的测试。如果你设置正确,画外音将删除额外的标签。这允许您在容器视图中读取该类型,并且仍然设置
accessibilityTraits

因此,例如,如果您将
accessibilityTraits
设置为
UIAccessibilityTraitButton
,并且
accessibilityLabel
中的最后一个字是按钮,它将删除最后一个字,并且只读取按钮一次。但是,如果将
accessibilityTraits
设置为'UIAccessibilityTraitImage',则不会删除按钮,并将以“按钮图像”结束读取。然而,将最后一个单词改为“image”,它只能读取image一次

苹果公司在这一实现上有着非常好的预见性