iOS Voice Over仅读取任何警报视图的标题

时间:2015-06-08 08:22:33

标签: ios uialertview voiceover

我的应用程序的可访问性工作仍在继续。我发现的下一个问题是,只要出现alertView,语音只会读出以下内容

  • 警报
  • 提醒标题

尽管我认为这也是为了宣读警报机构。

要解决此问题,我必须执行以下代码

NSString *alertAction = notification.alertAction;
NSString *alertBody = notification.alertBody;

if (UIAccessibilityIsVoiceOverRunning())
{
  // TODO - iOS VoiceOver has a bug where it only reads out the alert action, not the body.. combine everything into one
  // for now so its read out together
  alertAction = [NSString stringWithFormat:@"%@, %@", alertAction, alertBody];
  alertBody = nil;
}

UIAlertController* alertController = [UIAlertController alertControllerWithTitle:alertAction
                                                                         message:alertBody
                                                                  preferredStyle:UIAlertControllerStyleAlert];


[alertController addAction:[UIAlertAction actionWithTitle:@"Ok" style:UIAlertActionStyleCancel
                                                       handler:^(UIAlertAction * action) {

                                                       }]];

[visibleViewController presentViewController:alertController animated:YES completion:nil];

将标题和消息组合成一个用于标题的字符串。清除消息。

这似乎解决了这个问题,但感觉有点笨拙,显然在粗体标题字体中有这么多文字看起来有些令人反感。

任何人都遇到过这个问题,或者有任何其他修复方法,以避免以这种方式屠杀我的所有提醒?

干杯

0 个答案:

没有答案