Pacote | flash.ui |
Classe | public final class GameInputDevice |
Herança | GameInputDevice Object |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 3.7 |
GameInputDevice
representa um dispositivo de entrada único comumente usado para jogar.
Esta classe inclui métodos e propriedades que você pode usar para:
-
Ative ou desative um dispositivo de entrada. Os dispositivos são desativados por padrão; (
enabled
definido comofalse
). Você deverá ativar explicitamente um dispositivo, definindoenabled
emtrue
, antes que você possa obter os valores de controle do dispositivo. -
Obtenha o nome e o ID de um dispositivo de entrada. As propriedades
name
eID
em conjunto identificam um dispositivo exclusivamente. Para dispositivos Android, o fabricante do dispositivo fornece estes valores. Para dispositivos iOS, aid
pode alterar toda vez que você conectar o dispositivo. -
Enumere os controles em um dispositivo de entrada. Os controles físicos em um dispositivo são mapeados em objetos lógicos
de GameInputControl
e armazenados em uma lista. Acesse um controle na lista com o métodogetControlAt ()
. -
Procure armazenar em cache os valores de controle experimentados. Experimentar um grupo de valores de controle diretamente de um objeto de dispositivo é um dos três modos de obter valores de controle. (As duas outras formas usam o método
value
na classeGameInputControl
e são descritas lá.) O armazenamento em cache da amostra é útil quando você precisa de valores de controle de acesso a uma taxa mais rápida do que a taxa de quadros de um aplicativo.
Defina sempre um ouvinte nesta classe para o eventoGameInputEvent. Evento de DEVICE_REMOVED.
Este ouvinte permite administrar o caso de um dispositivo desconectado ou desligado inesperadamente. Quando um dispositivo se desconectar, liberte o seu objeto GameInputDevice
, uma vez que o objeto não é mais válido depois que o seu dispositivo associado se desconecta.
Um dispositivo Android removido e logo reconectado conserva a ID que tinha quando se conectou pela primeira vez. Você pode reconectar logicamente a um dispositivo correspondendo ao seu ID. Para dispositivos iOS, a ID pode alterar ao reconectar o dispositivo.
Nota: não confie na ordem de dispositivos na lista. (A ordem pode ser alterada quando os dispositivos são adicionados e removidos.)
Para obter mais informações, consulte o artigo da Central do Desenvolvedor do Adobe Air: Controladores de jogos no Adobe AIR.
Para Android, este recurso suporta uma versão mínima do Android OS 4.1 e requerem o SWF versão mínima 20 e namespace 3.7. No iOS, esse recurso tem suporte para uma versão mínima do iOS 9.0 e requer o SWF versão mínima 34 e namespace 23.0.
Elementos da API relacionados
Propriedade | Definido por | ||
---|---|---|---|
constructor : Object
Uma referência ao objeto de classe ou à função de construtor de uma determinada ocorrência de objeto. | Object | ||
enabled : Boolean
Ativa ou desativa este dispositivo. | GameInputDevice | ||
id : String [somente leitura]
Retorna a ID deste dispositivo. | GameInputDevice | ||
name : String [somente leitura]
Retorna o nome deste dispositivo. | GameInputDevice | ||
numControls : int [somente leitura]
Retorna o número de controles neste dispositivo. | GameInputDevice | ||
sampleInterval : int
Especifica a taxa (em milissegundos) na qual são recuperados os valores de controle. | GameInputDevice |
Método | Definido por | ||
---|---|---|---|
Grava valores de mostra em cache na ByteArray. | GameInputDevice | ||
Recupera um controle específico de um dispositivo. | GameInputDevice | ||
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 | ||
Solicita que este dispositivo comece a manter um cache de valores de amostra. | GameInputDevice | ||
Interrompe o armazenamento de amostras em cache. | GameInputDevice | ||
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 | ||
Retorna o valor primitivo do objeto especificado. | Object |
Constante | Definido por | ||
---|---|---|---|
MAX_BUFFER_SIZE : int = 32000 [estático]
Especifica o tamanho máximo do buffer usado para armazenar em cache os valores de controle de amostra. | GameInputDevice |
enabled | propriedade |
enabled:Boolean
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 3.7 |
Ativa ou desativa este dispositivo. Os dispositivos são desativados por padrão. Permite que um dispositivo acesse ou faça uma amostra dos seus valores de controle. Do mesmo modo, um dispositivo e os seus controles individuais despacham eventos somente quando o dispositivo está ativado.
Quando um dispositivo é removido, ele é desativado. Ainda é possível pode obter informações sobre um dispositivo desativado, mas não é possível acessar valores de controle de acesso ou iniciar o armazenamento em cache. Também não será possível ativar o dispositivo se ele foi removido. Se um dispositivo for removido, enabled
sempre retornará false
.
Implementação
public function get enabled():Boolean
public function set enabled(value:Boolean):void
id | propriedade |
id:String
[somente leitura] Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 3.7 |
Retorna a ID deste dispositivo. Você pode diferenciar os dispositivos por seus IDs.
Observação: para dispositivos Android, o fabricante do dispositivo fornece IDs do dispositivo. Para dispositivos iOS, a ID pode alterar ao reconectar o dispositivo.
Implementação
public function get id():String
name | propriedade |
name:String
[somente leitura] Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 3.7 |
Retorna o nome deste dispositivo. O nome pode ajudar a identificar o tipo do dispositivo.
Nota: o fabricante de dispositivos fornece os nomes dos seus dispositivos.
Implementação
public function get name():String
numControls | propriedade |
sampleInterval | propriedade |
sampleInterval:int
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 3.7 |
Especifica a taxa (em milissegundos) na qual são recuperados os valores de controle. O padrão é 0, que significa que os valores são atualizados uma vez por quadro. Definir um sampleValue
mais alto dirige GameInput a valores de controle de mostra por uma taxa mais rápido do que a taxa de quadros do aplicativo.
Embora os valores possam ser atualizados mais frequentemente do que uma vez por quadro, só um evento por controle é despachado. Por isso, se duas atualizações de um valor ocorrem em um quadro, somente um evento de alteração será despachado, e somente o valor mais novo poderá será recuperado.
Para recuperar mais do que somente o valor mais novo, você pode armazenar valores de amostra em cache, usando os métodos de cache nesta classe. Ao armazenar em cache os valores de amostra, esta propriedade determina com que frequência os valores são gravados em cache.
O valor padrão é 0.
Implementação
public function get sampleInterval():int
public function set sampleInterval(value:int):void
Lança
IOError — Quando o dispositivo é desativado ao definir esta propriedade.
| |
RangeError — Quando sampleInterval é menor que 0.
|
getCachedSamples | () | método |
public function getCachedSamples(data:ByteArray, append:Boolean = false):int
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 3.7 |
Grava valores de amostra em cache na ByteArray
. Os valores de amostra gravados em cache são gravados na ByteArray
na ordem em que são recuperados (os valores mais antigos primeiro, os mais novos por último).
Este método retorna o número de valores de amostra gravados em cache que são gravados na ByteArray
(não os próprios valores). Se o parâmetro append
for false
(o padrão), então ByteArray
será compensado antes que os valores de amostra sejam gravados em cache. Se append
for true, então os valores de amostra serão anexados a ByteArray
, preservando os valores mais antigos. Anexe valores de mostra se:
- Tiver que guardar um número específico de valores disponíveis.
- Tiver que guardar um histórico maior do que a cache.
append
não for true
, é responsabilidade do aplicativo compensar ByteArray
. Se ByteArray
não for limpa, continuará a crescer, potencialmente danificando o aplicativo.
A cache é compensada depois que os valores de amostra são gravados na ByteArray
.
Um IOError
será lançado se o dispositivo estiver desativado quando este método for invocado.
Parâmetros
data:ByteArray — ByteArray que mantém os dados recuperados. É preenchido com valores de amostra gravados como duplicações. O ByteArray mantém NaN como o valor de um controle se nenhuma alteração for detectada na posição do controle.
| |
append:Boolean (default = false ) — Um sinalizador que determina como o dado é gravado na ByteArray . Se true , os valores escolhidos serão gravados na extremidade da matriz. Sefalse , os conteúdos deByteArray serão removidos e os dados serão gravados na matriz. O padrão é false .
|
int — O número de amostras (não valores) gravado em ByteArray .
|
Lança
ArgumentError — Quando data é nulo.
| |
IOError — Quando este método é invocado e o dispositivo está desativado.
|
getControlAt | () | método |
public function getControlAt(i:int):GameInputControl
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 3.7 |
Recupera um controle específico de um dispositivo.
GameInputDevice armazena os controles de um dispositivo em uma lista. Você poderá acessar controles individuais em um dispositivo utilizando o método getControlAt ()
.
A ordem de controles no índice poderá ser alterada sempre que um dispositivo for adicionado ou removido. Você pode marcar a propriedade id
em um objeto GameInputControl
para corresponder a um controle específico.
É possível obter controles mesmo se um dispositivo não se ativar. Contudo, não é possível ler valores de controle em um dispositivo desativado. Esse recurso permite que você leia as propriedades de um controle antes de ativar o dispositivo ao qual pertence. Você pode usar esta capacidade para determinar se um dispositivo é apropriado para o seu aplicativo antes de ativar o dispositivo.
Parâmetros
i:int — A posição de índice de GameInputControl na lista de GameInputControls.
|
GameInputControl — Objeto GameInputControl na posição de índice especificada.
|
Lança
RangeError — Quando o índice é menor do que o zero ou maior do que (numControls - 1) .
|
startCachingSamples | () | método |
public function startCachingSamples(numSamples:int, controls:Vector.<String>):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 3.7 |
Solicita que este dispositivo comece a manter um cache de valores de amostra. A propriedade sampleInterval
determina a frequência das amostras. O parâmetro numSamples
especifica o número de amostras para a cache. O parâmetro control
especifica os valores de ID dos controles para a amostra.
Os valores de controle são armazenados em cache na ordem especificada. Você recupera os valores de amostra pela chamada do método getCachingSamples
.
Se a memória necessária para armazenar os valores em cache for maior do que o valor especificado na constante MAX_BUFFER_SIZE
, esse método lançará um MemoryError
. Um IOError
será lançado se o dispositivo não for ativado antes de chamar este método.
Parâmetros
numSamples:int — O número de amostras para armazenar em cache. Ao recuperar amostras você sempre obtém menor ou igual a numSamples .
| |
controls:Vector.<String> — Um vetor de String . Cada String é um ID de um controle. As amostras são gravadas na mesma ordem fornecida neste vetor.
|
Lança
RangeError — Quando numSamples é menor ou igual a zero ou quando uma entrada em control é menor do que zero ou maior do que (numControls - 1) .
| |
ArgumentError — Quando os controles são null ou não contêm pelo menos uma entrada ou contêm entradas inválidas.
| |
IOError — Quando este método é invocado em um dispositivo desativado.
| |
MemoryError — Quando o tamanho da cache (o número de valores * de amostras) é maior do que MAX_BUFFER_SIZE .
|
stopCachingSamples | () | método |
public function stopCachingSamples():void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 3.7 |
Interrompe o armazenamento de amostras em cache. Embora os eventos de modificação em controles ainda sejam despachados, nenhuma outra amostra é salva em cache. Os valores ainda são recuperados na frequência especificada por sampleInterval
; contudo, esses valores não são armazenados em cache. Por isso, só é possível recuperar o último valor.
Lança
IOError — Quando invoca este método sem primeiro ativar o dispositivo.
|
MAX_BUFFER_SIZE | Constante |
public static const MAX_BUFFER_SIZE:int = 32000
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 3.7 |
Especifica o tamanho máximo do buffer usado para armazenar em cache os valores de controle de amostra. Se startCachingSamples
retornar amostras que necessitam mais memória do que especifica, lança erro um erro de memória.
Wed Jun 13 2018, 11:10 AM Z