Sittha
Sittha

Reputation: 51

Stuck with Voice Over

I am making a Thai Braille app (send e-mail, message for blind people) that can write Thai Braille by tapping the screen and matching with Braille letter will show and speak but I am stuck with the Voice Over that change the way of touch.

Is there any way to code Voice Over to use normal touch in the app?

I did this in viewDidLoad but seems doesn't work

UIView *interactionView = [[UIView alloc]init]; [self.view addSubview:interactionView]; [interactionView setAccessibilityTraits:UIAccessibilityTraitAllowsDirectInteraction];

Upvotes: 1

Views: 1000

Answers (2)

Vinzzz
Vinzzz

Reputation: 11724

No, there isn't. :) (EDIT : prior to iOS 5.0, thanks HotPaw2)

VoiceOver can just be used as a whole : voice synthesis AND specific touch interaction, as stated in the accessibility programming guide

"VoiceOver is Apple’s innovative screen-reading technology, which gives users control over their devices without having to see the screen. VoiceOver does this by acting as an intermediary between an application's user interface and the user's touch, providing audible descriptions of elements and actions in the application."

Upvotes: 1

hotpaw2
hotpaw2

Reputation: 70673

Yes, but only on iOS 5 (and later). A new UIAccessibility API trait, UIAccessibilityTraitAllowsDirectInteraction, was added to iOS 5 to disable VoiceOver from handling or changing touches in the specified view or sub view. Just put your Braille keyboard in a separate UIView, and add something like:

[ myBrailleSubView setAccessibilityTraits: UIAccessibilityTraitAllowsDirectInteraction ];

That subview will then handle its own touches via it's own touch event delegates.

Upvotes: 3

Related Questions