Pacote | flash.accessibility |
Classe | public final class Accessibility |
Herança | Accessibility Object |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Mobile Browser Support:: essa classe não possui suporte para navegadores móveis.
Suporte a perfil do AIR: este recurso conta com suporte em todos os sistemas operacionais para desktop, mas não é compatível com dispositivos móveis nem com dispositivos AIR for TV. Consulte Suporte a perfil do AIR para obter mais informações sobre o suporte de API através de múltiplos perfis.
Para obter e definir propriedades acessíveis para um objeto específico, como um botão, clipe de filme ou campo de texto, use a propriedade DisplayObject.accessibilityProperties
. Para determinar se o player ou o tempo de execução está em execução em um ambiente com suporte a recursos de acessibilidade, use a propriedade Capabilities.hasAccessibility
.
Observação: o AIR 2 suporta o software de leitura de tela JAWS 11 (ou superior). Para informações adicionais, consulte http://www.adobe.com/br/accessibility/.
Saiba mais
Elementos da API relacionados
Propriedade | Definido por | ||
---|---|---|---|
active : Boolean [estático] [somente leitura]
Indica se um leitor de tela está atualmente ativo e se o aplicativo está em comunicação com ele. | Accessibility | ||
constructor : Object
Uma referência ao objeto de classe ou à função de construtor de uma determinada ocorrência de objeto. | Object |
Método | Definido por | ||
---|---|---|---|
Indica se um objeto tem uma propriedade especificada definida. | Object | ||
Indica se uma ocorrência da classe Object está na cadeia de protótipos do objeto especificado como o parâmetro. | Object | ||
Indica se a propriedade especificada existe e é enumerável. | Object | ||
Define a disponibilidade de uma propriedade dinâmica para operações de repetição. | Object | ||
Retorna a representação da string deste objeto, formatado segundo as convenções específicas para a localidade. | Object | ||
Retorna a representação de string do objeto especificado. | Object | ||
[estático]
Instrui o Flash Player a aplicar qualquer alteração de acessibilidade feita com o uso da propriedade DisplayObject.accessibilityProperties. | Accessibility | ||
Retorna o valor primitivo do objeto especificado. | Object |
active | propriedade |
active:Boolean
[somente leitura] Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Indica se um leitor de tela está atualmente ativo e se o aplicativo está em comunicação com ele. Use esse método quando quiser que seu aplicativo se comporte de modo diferente na presença de um leitor de tela.
Uma vez que esta propriedade está definida para true
, permanece true
pela duração do aplicativo. (Não é comum para um usuário desativar o leitor de tela uma vez que ele for iniciado.)
Observação:Antes de chamar este método, espere 1 ou 2 segundos depois de iniciar o seu aplicativo de AIR ou depois da primeira aparição da janela do Flash® Player em que seu documento está sendo executado. De outra maneira, você pode adquirir um valor de retorno de false
mesmo se houver um cliente de acessibilidade ativo. Isto acontece por causa de um mecanismo de comunicação assíncrona entre clientes de acessibilidade e Flash Player ou AIR.
Capabilities.hasAccessibility
.
Implementação
public static function get active():Boolean
Elementos da API relacionados
updateProperties | () | método |
public static function updateProperties():void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Instrui o Flash Player a aplicar qualquer alteração de acessibilidade feita com o uso da propriedade DisplayObject.accessibilityProperties
. Você precisa chamar esse método para que suas alterações tenham efeito.
Se você modificar as propriedades de acessibilidade de vários objetos, será necessária apenas uma chamada do método Accessibility.updateProperties()
; várias chamadas podem resultar em redução do desempenho e em uma saída errônea do leitor de tela.
Lança
IllegalOperationError — A acessibilidade não é suportada nesta versão do Flash Player. Não chame o método Accessibility.updateProperties() se a propriedade flash.system.Capabilities.hasAccessibility for false .
|
Elementos da API relacionados
AccessibilityExample
, CustomAccessibleButton
, CustomSimpleButton
e ButtonDisplayState
para criar um menu compatível com acessibilidade que funcione com a maioria dos leitores de tela. O exemplo executa as seguintes tarefas:
- Rastreia a propriedade
Accessibility.active
para determinar se um leitor de tela está atualmente ativo e se o player está se comunicando com ele. - Se a propriedade
active
retornartrue
, o exemplo chama o métodoupdateProperties()
para aplicar as alterações de acessibilidade feitas aos botões nesse exemplo. - O exemplo chama o método
flash.utils.setTimeout()
, especificando que o método de encerramentoupdateAccessibility()
deverá ser chamado após 2 segundos.
Observação: Chame setTimeout()
antes de marcar Accessibility.active
para dar ao Flash Player os 2 segundos que ele precisa para conectar a um leitor de tela se houver um disponível. Se você não fornecer um tempo de atraso suficiente, a chamada de setTimeout
poderá retornar false
mesmo que um leitor de tela esteja disponível.
O exemplo a seguir processa o método Accessibility.updateProperties()
somente se a chamada de Accessibility.active
retornar true
, o que só ocorre se o Flash Player estiver conectado a um leitor de tela ativo no momento. Se updateProperties
for chamado sem um leitor de tela ativo, ele lançará uma exceção 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(); } }
Wed Jun 13 2018, 11:10 AM Z