Paquete | flash.accessibility |
Clase | public final class Accessibility |
Herencia | Accessibility Object |
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 1.0, Flash Player 9 |
Compatibilidad con navegador móvil: esta clase no se admite en navegadores móviles.
Compatibilidad con perfil de AIR: esta característica se admite en todos los sistemas operativos de escritorio, pero no en dispositivos móviles o en dispositivos de AIR para TV. Consulte Compatibilidad con perfil de AIR para obtener información sobre la compatibilidad de la API con varios perfiles.
Para obtener y definir las propiedades de un objeto concreto como, por ejemplo, un botón, un clip de película o un campo de texto, utilice la propiedad DisplayObject.accessibilityProperties
. Para determinar si el reproductor o el motor de ejecución se está ejecutando en un entorno que admite elementos de accesibilidad, utilice la propiedad Capabilities.hasAccessibility
.
Nota: AIR 2 admite el software de lector de pantalla JAWS 11 (o superior). Para obtener más información, consulte http://www.adobe.com/es/accessibility/.
Más información
Elementos de API relacionados
Propiedad | Definido por | ||
---|---|---|---|
active : Boolean [estática] [solo lectura]
Indica si un lector de pantalla está activo y si la aplicación se comunica con él. | Accessibility | ||
constructor : Object
Una referencia a la clase de objeto o función constructora para una instancia de objeto determinada. | Object |
Método | Definido por | ||
---|---|---|---|
Indica si un objeto tiene definida una propiedad especificada. | Object | ||
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro. | Object | ||
Indica si existe la propiedad especificada y si es enumerable. | Object | ||
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle. | Object | ||
Devuelve la representación de cadena de este objeto, con formato según las convenciones específicas de configuración regional. | Object | ||
Devuelve la representación de cadena del objeto especificado. | Object | ||
[estática]
Indica a Flash Player que aplique todos los cambios de accesibilidad mediante la propiedad DisplayObject.accessibilityProperties. | Accessibility | ||
Devuelve el valor simple del objeto especificado. | Object |
active | propiedad |
active:Boolean
[solo lectura] Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 1.0, Flash Player 9 |
Indica si un lector de pantalla está activo y si la aplicación se comunica con él. Utilice este método cuando desee que la aplicación se comporte de forma diferente en presencia de un lector de pantalla.
Una vez establecida esta propiedad en true
, permanece true
para toda la duración de la aplicación. (Es inusual que un usuario desactive el lector de pantalla una vez iniciado.)
Nota: antes de llamar a este método, espere 1 ó 2 segundos después de iniciar la aplicación de AIR o después de la primera aparición de la ventana de Flash® Player en la que se está reproduciendo el documento. En caso contrario, es posible que obtenga un valor devuelto false
aunque haya activo un cliente de accesibilidad. Esto se debe a una operación asíncrona de mecanismo de comunicación entre clientes de accesibilidad y Flash Player o AIR.
Capabilities.hasAccessibility
.
Implementación
public static function get active():Boolean
Elementos de API relacionados
updateProperties | () | método |
public static function updateProperties():void
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 1.0, Flash Player 9 |
Indica a Flash Player que aplique todos los cambios de accesibilidad mediante la propiedad DisplayObject.accessibilityProperties
. Es necesario llamar a este método para que los cambios surtan efecto.
Si modifica las propiedades de accesibilidad de varios objetos, sólo será necesaria una llamada al método Accessibility.updateProperties()
; si se realizan varias llamadas, podría producirse una reducción del rendimiento y obtenerse datos incorrectos en el lector de pantalla.
Emite
IllegalOperationError — La clase Accessibility no se admite en esta versión de Flash Player. No llame al método Accessibility.updateProperties() si la propiedad flash.system.Capabilities.hasAccessibility es false .
|
Elementos de API relacionados
AccessibilityExample
, CustomAccessibleButton
, CustomSimpleButton
y ButtonDisplayState
para crear un menú compatible con la accesibilidad que funcione con la mayor parte de los lectores de pantalla. El ejemplo realiza las siguientes tareas:
- Busca la propiedad
Accessibility.active
para determinar si un lector de pantalla está activo actualmente y si el reproductor se comunica con él. - Si la propiedad
active
devuelvetrue
, el ejemplo llama al métodoupdateProperties()
para aplicar los cambios de accesibilidad realizados en los botones de este ejemplo. - El ejemplo llama al método
flash.utils.setTimeout()
, especificando que se debe llamar al método de cierreupdateAccessibility()
transcurridos 2 segundos.
Nota: llame a setTimeout()
antes de comprobar Accessibility.active
para que Flash Player cuente con los 2 segundos que necesita para conectarse a un lector de pantalla, si hay alguno disponible. Si no se proporciona un tiempo de demora suficiente, la llamada a setTimeout
puede devolver false
aunque haya un lector disponible.
En el ejemplo siguiente, se procesa el método Accessibility.updateProperties()
sólo si la llamada a Accessibility.active
devuelve true
, lo cual sucede únicamente si Flash Player se encuentra conectado a un lector de pantalla activo. Si se llama a updateProperties
sin un lector de pantalla activo, se emitirá una excepción IllegalOperationError
.
package { import flash.display.Sprite; import flash.accessibility.Accessibility; import flash.utils.setTimeout; public class AccessibilityExample extends Sprite { public static const BUTTON_WIDTH:uint = 90; public static const BUTTON_HEIGHT:uint = 20; private var gutter:uint = 5; private var menuLabels:Array = new Array("PROJECTS", "PORTFOLIO", "CONTACT"); private var menuDescriptions:Array = new Array("Learn more about our projects" , "See our portfolio" , "Get in touch with our team"); public function AccessibilityExample() { configureAssets(); setTimeout(updateAccessibility, 2000); } private function updateAccessibility():void { trace("Accessibility.active: " + Accessibility.active); if(Accessibility.active) { Accessibility.updateProperties(); } } private function configureAssets():void { var child:CustomAccessibleButton; for(var i:uint; i < menuLabels.length; i++) { child = new CustomAccessibleButton(); child.y = (numChildren * (BUTTON_HEIGHT + gutter)); child.setLabel(menuLabels[i]); child.setDescription(menuDescriptions[i]); addChild(child); } } } } import flash.accessibility.AccessibilityProperties; import flash.display.Shape; import flash.display.SimpleButton; import flash.display.Sprite; import flash.events.Event; import flash.text.TextFormat; import flash.text.TextField; class CustomAccessibleButton extends Sprite { private var button:SimpleButton; private var label:TextField; private var description:String; private var _name:String; public function CustomAccessibleButton(_width:uint = 0, _height:uint = 0) { _width = (_width == 0) ? AccessibilityExample.BUTTON_WIDTH : _width; _height = (_height == 0) ? AccessibilityExample.BUTTON_HEIGHT : _height; button = buildButton(_width, _height); label = buildLabel(_width, _height); addEventListener(Event.ADDED, addedHandler); } private function addedHandler(event:Event):void { trace("addedHandler: " + this._name); var accessProps:AccessibilityProperties = new AccessibilityProperties(); accessProps.name = this._name; accessProps.description = description; accessibilityProperties = accessProps; removeEventListener(Event.ADDED, addedHandler); } private function buildButton(_width:uint, _height:uint):SimpleButton { var child:SimpleButton = new CustomSimpleButton(_width, _height); addChild(child); return child; } private function buildLabel(_width:uint, _height:uint):TextField { var format:TextFormat = new TextFormat(); format.font = "Verdana"; format.size = 11; format.color = 0xFFFFFF; format.align = TextFormatAlign.CENTER; format.bold = true; var child:TextField = new TextField(); child.y = 1; child.width = _width; child.height = _height; child.selectable = false; child.defaultTextFormat = format; child.mouseEnabled = false; addChild(child); return child; } public function setLabel(text:String):void { label.text = text; this._name = text; } public function setDescription(text:String):void { description = text; } } class CustomSimpleButton extends SimpleButton { private var upColor:uint = 0xFFCC00; private var overColor:uint = 0xCCFF00; private var downColor:uint = 0x00CCFF; public function CustomSimpleButton(_width:uint, _height:uint) { downState = new ButtonDisplayState(downColor, _width, _height); overState = new ButtonDisplayState(overColor, _width, _height); upState = new ButtonDisplayState(upColor, _width, _height); hitTestState = new ButtonDisplayState(upColor, _width, _height); useHandCursor = true; } } class ButtonDisplayState extends Shape { private var bgColor:uint; private var _width:uint; private var _height:uint; public function ButtonDisplayState(bgColor:uint, _width:uint, _height:uint) { this.bgColor = bgColor; this._width = _width; this._height = _height; draw(); } private function draw():void { graphics.beginFill(bgColor); graphics.drawRect(0, 0, _width, _height); graphics.endFill(); } }
Tue Jun 12 2018, 02:12 PM Z