iOS:带有复选框的UIAccessibility(画外音)无法正常运行

时间:2018-10-17 14:30:36

标签: ios voiceover uiaccessibility

我在复选框上使用了旁白。

我在这里面临的问题是, 当用户第一次选择该复选框时,它说“已选中复选框”(根据accessibilityLabel设置正确),而下一次当用户尝试取消选择它时,它说“已选中复选框,已取消选中复选框”,只应说反之,则“取消选中复选框”。

因此,这里发生的是,先前设置的accessibilityLabel没有被清除,并且当用户尝试选择或取消选择时,它同时使用了之前和当前设置的标签。

注意-使用自定义复选框,将UIButton与选定/取消选定的图像切换。

如何解决此冲突?

1 个答案:

答案 0 :(得分:0)

如果您通过UIButton项目创建了复选框,我建议您:

  • 取消选中按钮UIAccessibilityTraits
  • 在首次选中该复选框时提供清晰的提示:“双击以更改值”。
  • 切换框时,请多加IBAction来更新按钮的可访问性标签。

但是,最好创建一个UIAccessibilityElement,其中包含您的复选框和描述其所指内容的标签。当您double-tap使用此可访问的包装器时,复选框值将切换,并且您最初的问题将消失。

执行以下步骤将为您提供适当的用户体验,并且不会您没有注意到复选框VoiceOver冲突