2010-11-28 2 views
0

Ich muss eine kleine App für Screenreader zugänglich machen.Flex Accessibility - Auslesen eines Labels/Textes

Ich bin dabei, Schaltflächen zugänglich zu machen, aber ich möchte auch einen Abschnitt von Text durch Bildschirmlesegeräte zugänglich machen, so dass Benutzer hören können, was der Text sagt.

Ich kann nicht scheinen, wie man das macht .. Ich habe verschiedene Textsteuerelemente ausprobiert und sie als focusEnabled, tabEnabled gesetzt, ich habe auch die accessibility * -Attribute gesetzt, aber es scheint nie zu funktionieren, ich kann nicht auf eine Textbeschriftung zugreifen und den Inhalt hören.

Ich bin ehrlich gesagt ein wenig neu zu Accessibility in Flex so Entschuldigungen, wenn ich etwas offensichtlich fehlen.

Hat jemand einen Vorschlag dazu?

Dank

Mit Flex 4 + Jaws

Antwort

2

Sie müssen Klassen machen, die für Sie relevanten Text-Komponenten erweitern und IFocusManagerComponent explizit implementieren. Glücklicherweise sind alle Methoden zur Implementierung von IFocusManagerComponent in UIComponent erfüllt. Daher sollte die Implementierung in den Unterklassen nur deklariert werden, damit der FocusManager sie erkennen kann.

package scrap 
{ 
    import mx.managers.IFocusManagerComponent; 

    import spark.components.RichText; 

    public class FocusableRichText extends RichText implements IFocusManagerComponent 
    { 
     public function FocusableRichText() 
     { 
      super(); 
     } 
    } 
} 

Der genau gleiche Trick funktioniert für Label. Verwenden Sie diese nahezu trivialen Unterklassen überall dort, wo Sie sonst Ihre barrierefreien Textkomponenten platzieren würden.

+0

hey, yeah, das funktioniert wirklich gut, nice one :) Jetzt bin ich nicht sicher, warum Adobe dies standardmäßig auf die Spark-Komponenten getan hätte, wenn es so einfach ist ... – Ben