>我有一个自定义视图。我捕获视图的屏幕截图并在NSTextAttachment中使用图像作为:
UIImage *image = view.image;
NSTextAttachment *attachment = [NSTextAttachment new];
attachment.image = image;
然后,我使用此附件创建一个可变的属性字符串,如下所示:
NSAttributedString *attrStr = [NSAttributedString attributedStringWithAttachment:attachment];
此代码为所有视图循环,并通过将所有 attrStr 追加为来创建最后一个属性字符串:
[mutableString beginEditing];
[mutableString appendAttributedString:attrStr];
[mutableString endEditing];
然后,将其设置为 UILabel 属性文本。
问题:我希望画外音遍历属性文本中的单个图像。这样每个图像都通过画外音聚焦。
谢谢!!
循环访问单个图像(例如集合视图(的最佳方式依赖于将每个元素定义为包装器中的UIAccessibilityElement
,其特征属性为adjustable
。
要了解如何实现,我建议您查看WWDC 2018 - Deliver an exceptional accessibility experience
视频,其内容在此处进行了完美总结,并且可以下载其提供的示例。
使用UIAccessibilityContainer
协议也可能是一个有趣的调查轨道。
最后,我认为您不能按原样在属性文本中迭代图像,但是创建一种由之前定义的 VoiceOver 完全理解的可访问结构将允许实现您的目标。