VoiceOver在UITableViewCell中读取UIButton为" dimmed"

时间:2014-06-30 19:27:30

标签: ios objective-c uitableview uibutton voiceover

我已将UIButton添加到UITableViewCell而非默认UILabel。我做了这个,所以我可以禁用按钮,它工作得很好。我只是将enabled设置为NO,然后还为该单元格设置userInteractionEnabledNO。这对于有视力的用户非常有用,因为他们可以看到按钮被禁用(没有着色但是变灰),但对于盲人用户,VoiceOver无法区分启用和禁用按钮。当我点击填充单元区域的按钮时,无论按钮是启用还是禁用,VoiceOver都会显示" button_title,灰色按钮。" Dimmed很好我想告诉用户它不是交互式的,但是当按钮启用时它不应该说它变暗了。这是我需要向Apple报告的错误,我的设置是否有问题,我该如何解决这个问题?谢谢!

1 个答案:

答案 0 :(得分:1)

要获得所需的行为,UIButton应禁用用户交互,然后适当地设置其启用状态。应使用特征按钮禁用其辅助功能选项,并选中启用用户交互。对于包含单元格,它应该根据需要启用用户交互,并且应该启用其可访问性选项,并使用traits按钮并启用用户交互。然后,当您想要启用/禁用按钮时,还可以启用/禁用单元格的用户交互。

通过该设置,VoiceOver会在禁用时显示“button_title,dimmed,button”,如果已启用,则会排除灰色。