5. self.label.accessibilityTraits = self.progress.accessibilityTraits; This did not trigger an update to the braille display.
Note: I used storyboard and tested the accessibility with a Humanware Brailliant 32 connected to an iPad Air with iOS 7.1.1
The ViewController of the sample app contains 3 elements:
1. a stepper to manually increment the counter (maximum of 100)
2. an accessible progressView (a subclass of UIProgressView, with a custom accessibilityLabel) to display the counter value
3. an UILabel to display the text of the progressView's accessibilityLabel
A motionEvent was added to increment the counter, in order to avoid having the change the AccessibilityElementFocus in order to update the counter's and the elements' value.
Place the AccessibilityElementFocus on the progressView, with VoiceOver enabled and brailleDisplay connected, then shake the iPad to increment the counter. The VoiceOver accessibilityAnnouncement should follow a second later to announce the new accessibilityLabel and value of the progressView and the brailleDisplay should update.
To illustrate the issue (keeping VoiceOver enabled and brailleDisplay connected) change the AccessibilityElementFocus to the UILabel, then shake the iPad to increment the counter again. The VoiceOver accessibilityAnnouncement should follow a second later to announce the new accessibilityLabel with the updated label shown on screen. However the braille display did not refresh for me.
Any pointers or other suggestions would be appreciated.
Many thanks,
Ray