1

我一直在关注 iOS7 Day-by-Day 多页 TextKit 教程,但遇到了可访问性问题。本教程的代码在这里:iOS7 Day-by-Day

问题是每个文本视图(每列一个,每个“页面”两个)似乎包含整个字符串,并且启用 VoiceOver 时,每次一列获得焦点时,都会从开头读取文本字符串到最后,而不是读取列中实际可见的文本。

textviews/columns 是使用新的 iOS7 方法创建的

UITextView *textView = [[UITextView alloc] initWithFrame:textViewFrame textContainer:textContainer];

如何让 VoiceOver 只读取每列中的可见文本?

4

1 回答 1

0

听起来您只需要确定哪些文本是可见的,然后将其传递给 VoiceOver。

为此,您可以使用在此相关问题中找到的两种可能的方法,并使用可见文本的范围,然后可以通过以下方式创建子字符串

NSString *textToPassToVoiceOver = [[textView.text] rangeOfSubstring:visibleTextRange];

说得通?

于 2014-05-05T01:58:44.733 回答