我在复选框上使用了旁白。
我在这里面临的问题是, 当用户第一次选择该复选框时,它说“已选中复选框”(根据accessibilityLabel设置正确),而下一次当用户尝试取消选择它时,它说“已选中复选框,已取消选中复选框”,只应说反之,则“取消选中复选框”。
因此,这里发生的是,先前设置的accessibilityLabel没有被清除,并且当用户尝试选择或取消选择时,它同时使用了之前和当前设置的标签。
注意-使用自定义复选框,将UIButton与选定/取消选定的图像切换。
如何解决此冲突?
答案 0 :(得分:0)
如果您通过UIButton
项目创建了复选框,我建议您:
UIAccessibilityTraits
。IBAction
来更新按钮的可访问性标签。但是,最好创建一个UIAccessibilityElement
,其中包含您的复选框和描述其所指内容的标签。当您double-tap使用此可访问的包装器时,复选框值将切换,并且您最初的问题将消失。
执行以下步骤将为您提供适当的用户体验,并且不会您没有注意到复选框VoiceOver冲突。