2 votes

Définir le badge d'accessibilité sur un tabbarItem

J'ai une application de barre d'onglets. S'il y a un badge sur un certain onglet, VoiceOver prononce N items . J'aimerais qu'il se prononce N messages .

Comment je fais ça ?

0voto

avishic Points 1295

J'ai eu un problème similaire, il semble que UITabBarViewController.tabbar gère l'accessibilité différemment des autres vues. Ma solution a donc consisté à placer une autre uiview au-dessus du badge en tant que sous-vue de [tabbar superview] et à ajouter l'accessibilité à cette vue :

A viewDidLoad :

self.badgeAccessibilityView = [[UIView alloc] init];
//use tabBarView.frame to calculate
self.badgeAccessibilityView.frame = frameAccordingToBadgeLocation;
self.badgeAccessibilityView.userInteractionEnabled = YES;
self.badgeAccessibilityView.isAccessibilityElement = YES;
[self.tabBarView.superview addSubview:self.badgeAccessibilityView];

Sur le changement de valeur du badge :

self.badgeAccessibilityView.accessibilityLabel = 
   [NSString stringWithFormat:@"%d Notifications", badgeValue];

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X