Я пытаюсь сделать доступным элемент пользовательского интерфейса музыкальной клавиатуры. Так же, как это делает GarageBand. Другими словами, на первом касании пользователю VoiceOver говорят, что они касаются музыкальной клавиатуры, и с этого момента каждый щелчок на музыкальном экране клавиатуры воспроизводит заметки, и больше не происходит прерываний VoiceOver, пока пользователь не коснется музыкальной клавиатуры.Добавление доступности к элементу пользовательского стиля фортепиано
У меня есть UICollectionView
, где каждая ячейка представляет собой музыкальный ключ и когда пользователь нажимает на него, ноты воспроизводятся, как ожидалось. Тем не менее, у меня есть проблемы с тем, чтобы это работало, как это делает GB. Для объекта UICollectionView
я установил accessibilityLabel
и установил accessibilityTraits
в UIAccessibilityTraitAllowsDirectInteraction
. Но это не работает. Он не воспроизводит никаких заметок, когда VoiceOver включен. При первом нажатии VoiceOver выводит на экран любую доступную метку accessibilityLabel, а затем просто подает звуковой сигнал при каждом нажатии.
У меня есть пользовательский UIGestureRecogniser
подкласс, который я использую для обнаружения клеточного ключа коллекции. Нужно ли мне делать что-то особенное в этих обстоятельствах?
Любые идеи? Нужно ли мне что-то делать?