Вот мой очень простой код для создания UITextView
.
UITextView *textView = [[UITextView alloc] initWithFrame:self.view.bounds];
textView.editable = NO;
textView.text = @"Using iOS 3.0 and later, VoiceOver is available to help users with visual impairments use their iOS-based devices. The UI Accessibility programming interface, introduced in iOS 3.0, helps developers make their applications accessible to VoiceOver users. Briefly, VoiceOver describes an application’s user interface and helps users navigate through the application’s views and controls, using speech and sound. Users familiar with VoiceOver in Mac OS X can leverage their experience to help them quickly come up to speed using VoiceOver on their devices.";
[self.view addSubview:textView];
Учитывая, что я не мог сделать что-то не так, мне просто интересно, является ли это ожидаемым поведением или ошибкой, с кем, возможно, кто-то сталкивался:
При включенном голосовом озвучивании я ожидаю, что весь текстовый вид будет "подсвечен" при нажатии, а затем его accessibilityLabel
для чтения пользователю и после двойного нажатия - весь текст text view
, который нужно прочитать.
Но происходит то, что выделена небольшая часть текстового вида (обычно 2 строки), accessibilityLabel
не читается, но первая "выделенная" строка и первая буква (!) второй строки читать вместо этого, и только после того, как пользователь удваивает кратки, весь текст читается.
Особенно чтение первой буквы во второй выделенной строке меня смущает. Плюс shouldnt accessibilityLabel
всегда читается в начале?
Это выглядит для меня большим, но Apple всегда уделяла столько внимания доступности, поэтому у меня есть сомнения в том, что я должен сообщить об этом, возможно, это означает, что это так.
Другой вопрос: существует ли способ достичь следующего поведения (без субарендирования UITextView
), когда озвучивание включено: пользовательские нажатия UITextView
→ accessibilityLabel
и весь текст читается?