如何停止UISegmentedControl的VoiceOver声明?

Mus*_*sis 6 accessibility ios

我的应用程序UISegmentedControl包含两个按钮.我可以访问每个按钮的辅助功能字段; 我遇到的问题是,对于分段控件的子视图,VoiceOver会读出子视图的辅助功能,然后在分段控件中宣布视图的位置,因此第一个按钮的VoiceOver声明是"上一条消息.按钮."二." 对于第二个按钮,它是"下一条消息.按钮.两个中的两个."

如何阻止这些公告的最后部分("两个"和"两个"中的两个部分),这对VoiceOver用户没有实际意义?

pro*_*oxi 4

您可以将的子视图accessibilityTraits的属性设置为禁用 VoiceOver 的“Tab X of Y”部分:UISegmentedControlUIAccessibilityTraitNone

    for (UIView *thisView in self.segmentedControl.subviews) {
        [thisView setAccessibilityTraits:UIAccessibilityTraitNone];
    }
Run Code Online (Sandbox Code Playgroud)