ActionScript® 3.0 — dokumentacja dla platformy Adobe® Flash®
Strona główna  |  Ukryj listę pakietów i klas |  Pakiety  |  Klasy  |  Nowości  |  Indeks  |  Dodatki  |  Dlaczego język angielski?
Filtry: Pobieranie danych z serwera...
Pobieranie danych z serwera...
flash.ui 

GameInputDevice  - AS3

Pakietflash.ui
Klasapublic final class GameInputDevice
DziedziczenieGameInputDevice Inheritance Object

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 3.7

Klasa GameInputDevice reprezentuje jedno urządzenie wejściowe często używane do obsługi gier.

Ta klasa zawiera metody i właściwości, za pomocą których można wykonywać następujące czynności:

  • Włączanie i wyłączanie urządzenia wejściowego. Domyślnie urządzenia są początkowo wyłączone (właściwość enabled ma wartość false). Aby można było uzyskiwać wartości elementów sterujących z urządzenia, należy jawnie włączyć urządzenie, ustawiając właściwość enabled na wartość true.
  • Pobieranie nazwy oraz identyfikatora urządzenia wejściowego. Łącznie właściwości name oraz id jednoznacznie identyfikują urządzenie. W przypadku urządzeń z systemem Android producent urządzenia podaje te wartości. W przypadku urządzeń z systemem iOS wartość id może się zmieniać przy każdym podłączeniu urządzenia.
  • Wyszczególnianie elementów sterujących urządzenia wejściowego. Fizyczne elementy sterujące urządzenia są odwzorowywane na obiekty logiczne GameInputControl i przechowywane w formie listy. Dostęp do elementu sterującego na liście można uzyskać za pomocą metody getControlAt().
  • Zarządzanie buforowaniem próbkowanych wartości elementów sterujących. Próbkowanie zestawu wartości elementów sterujących bezpośrednio z obiektu urządzenia jest jednym z trzech sposobów uzyskiwania wartości elementów sterujących. Pozostałe dwa sposoby obejmują użycie metody value w klasie GameInputControl. Zostały one opisane w jej dokumentacji. Buforowanie próbek jest przydatne, gdy szybkość uzyskiwania dostępu do wartości elementów sterujących musi być większa niż szybkość odtwarzania aplikacji.

Zawsze należy skonfigurować detektor zdarzenia GameInputEvent.DEVICE_REMOVED tej klasy. Ten detektor umożliwi obsługę nieoczekiwanych odłączeń i wyłączeń urządzenia. Jeśli urządzenie zostanie odłączone, należy zwolnić jego obiekt GameInputDevice, ponieważ po odłączeniu skojarzonego z nim urządzenia traci on swoją ważność.

Urządzenie z systemem Android, które zostanie usunięte, a następnie ponownie podłączone, zachowuje swój identyfikator przydzielony podczas pierwszego podłączenia. Dopasowując identyfikator urządzenia, można je logicznie ponownie podłączyć. W przypadku urządzeń z systemem iOS identyfikator może się zmienić po ponownym podłączeniu urządzenia.

Uwaga: Nie należy odnosić się do kolejności urządzeń na liście. (Kolejność może ulec zmianie w przypadku dodawania i usuwania urządzeń).

Więcej informacji zawiera artykuł na temat kontrolerów gier w środowisku Adobe AIR dostępny w Adobe Air Developer Center: .

W przypadku systemu Android funkcja ta obsługuje system operacyjny Android w wersji 4.1 lub nowszej i wymaga plików SWF w wersji 20 lub nowszej oraz przestrzeni nazw 3.7. W przypadku systemu iOS funkcja ta obsługuje system iOS w wersji 9.0 lub nowszej i wymaga plików SWF w wersji 34 lub nowszej oraz przestrzeni nazw 23.0.

Powiązane elementy interfejsu API



Właściwości publiczne
 WłaściwośćZdefiniowane przez
 Inheritedconstructor : Object
Odwołanie do obiektu klasy lub funkcji konstruktora, dotyczące danej instancji obiektu.
Object
      enabled : Boolean
Włącza lub wyłącza to urządzenie.
GameInputDevice
      id : String
[tylko do odczytu] Zwraca identyfikator tego urządzenia.
GameInputDevice
      name : String
[tylko do odczytu] Zwraca nazwę tego urządzenia.
GameInputDevice
      numControls : int
[tylko do odczytu] Zwraca liczbę elementów sterujących tego urządzenia.
GameInputDevice
      sampleInterval : int
Określa częstotliwość (w milisekundach) pobierania wartości elementów sterujących.
GameInputDevice
Metody publiczne
 MetodaZdefiniowane przez
  
    getCachedSamples(data:ByteArray, append:Boolean = false):int
Zapisuje wartości próbkowania znajdujące się w buforze do obiektu ByteArray.
GameInputDevice
  
Pobiera z urządzenia określony element sterujący.
GameInputDevice
 Inherited
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość.
Object
 Inherited
Wskazuje, czy instancja klasy Object należy do łańcucha prototypów obiektu określonego jako parametr.
Object
 Inherited
Wskazuje, czy określona właściwość istnieje i jest przeliczalna.
Object
 Inherited
Ustawia dostępność właściwości dynamicznej używanej w pętlach.
Object
  
    startCachingSamples(numSamples:int, controls:Vector.<String>):void
Zleca danemu urządzeniu przechowywanie wartości próbek w buforze.
GameInputDevice
  
Powoduje zatrzymanie zapisywania próbek w buforze.
GameInputDevice
 Inherited
Zwraca ciąg reprezentujący obiekt — sformatowany zgodnie z konwencjami właściwymi dla ustawień regionalnych.
Object
 Inherited
Zwraca ciąg reprezentujący określony obiekt.
Object
 Inherited
Zwraca pierwotną wartość dla określonego obiektu.
Object
Stałe publiczne
 StałaZdefiniowane przez
      MAX_BUFFER_SIZE : int = 32000
[statyczny] Określa maksymalny rozmiar bufora używanego do przechowywania próbkowanych wartości elementów sterujących.
GameInputDevice
Szczegół właściwości
    

enabled

właściwość
enabled:Boolean

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 3.7

Włącza lub wyłącza to urządzenie. Urządzenia są domyślnie wyłączone. Włącza urządzenie w celu uzyskania dostępu do wartości jego elementów sterujących lub przeprowadzenia ich próbkowania. Ponadto urządzenie i jego poszczególne elementy sterujące wywołują zdarzenia tylko wtedy, gdy urządzenie jest włączone.

W przypadku usunięcia urządzenie jest wyłączane. Nadal można pobrać informacje o wyłączonym urządzeniu, ale nie można uzyskać dostępu do jego wartości elementów sterujących ani rozpocząć buforowania. Ponadto nie można włączyć urządzenia, które zostało usunięte. Jeśli urządzenie zostało usunięte, parametr enabled zawsze zwraca wartość false.



Implementacja
    public function get enabled():Boolean
    public function set enabled(value:Boolean):void
    

id

właściwość 
id:String  [tylko do odczytu]

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 3.7

Zwraca identyfikator tego urządzenia. Urządzenia można rozróżnić według ich identyfikatorów.

Uwaga: w przypadku urządzeń z systemem Android producent urządzenia podaje identyfikatory urządzenia. W przypadku urządzeń z systemem iOS identyfikator może się zmienić po ponownym podłączeniu urządzenia.



Implementacja
    public function get id():String
    

name

właściwość 
name:String  [tylko do odczytu]

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 3.7

Zwraca nazwę tego urządzenia. Nazwa może pomóc w identyfikacji typu urządzenia.

Uwaga: nazwy urządzeń są dostarczane przez producentów tych urządzeń.



Implementacja
    public function get name():String
    

numControls

właściwość 
numControls:int  [tylko do odczytu]

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 3.7

Zwraca liczbę elementów sterujących tego urządzenia.



Implementacja
    public function get numControls():int
    

sampleInterval

właściwość 
sampleInterval:int

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 3.7

Określa częstotliwość (w milisekundach) pobierania wartości elementów sterujących. Wartość domyślna to 0. Powoduje ona, że wartości są aktualizowane raz na klatkę. Ustawienie większej wartości parametru sampleValue nakazuje obiektowi GameInput próbkowanie wartości elementów sterujących z częstotliwością większą niż szybkość odtwarzania aplikacji.

Wartości mogą być aktualizowane częściej niż raz na klatkę, jednak wywoływane jest tylko jedno zdarzenie na element sterujący. Oznacza to, że jeśli w jednej klatce występują dwie aktualizacje wartości, wywoływane jest tylko jedno zdarzenie zmiany i można pobrać tylko najnowszą wartość.

Aby pobrać więcej niż tylko najnowsze wartości, można buforować wartości próbkowania przy użyciu metod buforowania w tej klasie. W przypadku buforowania wartości próbkowania ta właściwość określa, jak często wartości mają być zapisywane w buforze.

Wartością domyślną jest 0.



Implementacja
    public function get sampleInterval():int
    public function set sampleInterval(value:int):void

Zgłasza
IOError — Gdy urządzenie jest wyłączone podczas ustawiania tej właściwości.
 
RangeError — Gdy wartość parametru sampleInterval jest mniejsza niż 0.
Szczegół metody

    getCachedSamples

()metoda
public function getCachedSamples(data:ByteArray, append:Boolean = false):int

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 3.7

Zapisuje wartości próbkowania znajdujące się w buforze do obiektu ByteArray. Wartości próbkowania znajdujące się w buforze są zapisywane do obiektu ByteArray w kolejności, w jakiej zostały pobrane (na początku wartości najstarsze, na końcu wartości najnowsze).

Ta metoda zwraca liczbę wartości próbkowania znajdujących się w buforze, które zostały zapisane do obiektu ByteArray (nie zwraca samych wartości). Jeśli parametr append ma wartość false (domyślną), wówczas obiekt ByteArray jest czyszczony przed zapisaniem wartości próbkowania z bufora. Jeśli parametr append ma wartość true, wówczas wartości próbkowania są dołączane do obiektu ByteArray przy zachowaniu starszych wartości. Wartości próbkowania należy dołączać w następujących sytuacjach:

  • Konieczne jest udostępnianie określonej liczby wartości.
  • Konieczne jest zachowanie historii dłuższej niż zawartość bufora.
Ważne: Jeśli parametr append ma wartość true, obiekt ByteArray musi być czyszczony przez aplikację. Jeśli obiekt ByteArray nie jest czyszczony, staje się on coraz większy, co może spowodować awarię aplikacji.

Po zapisaniu wartości próbkowania do obiektu ByteArray bufor jest czyszczony.

Jeśli w momencie wywołania tej metody urządzenie jest wyłączone, generowany jest błąd IOError.

Parametry

data:ByteArray — Obiekt ByteArray, w którym są przechowywane pobrane dane. Jest on wypełniony wartościami próbkowania zapisanymi w postaci liczb rzeczywistych o podwójnej precyzji. Gdy nie wykryto żadnych zmian położenia elementu sterującego, obiekt ByteArray zawiera dla tego elementu wartość NaN.
 
append:Boolean (default = false) — Flaga określająca sposób zapisywania danych do obiektu ByteArray. W przypadku wartości true wartości próbek są zapisywane na końcu tablicy. W przypadku wartości false zawartość obiektu ByteArray jest usuwana, a następnie dane są zapisywane w tablicy. Wartość domyślna to false.

Zwraca
int — Liczba próbek (nie wartości) zapisanych do obiektu ByteArray.

Zgłasza
ArgumentError — Gdy parametr data ma wartość null.
 
IOError — Gdy ta metoda jest wywoływana, a urządzenie jest wyłączone.

    getControlAt

()metoda 
public function getControlAt(i:int):GameInputControl

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 3.7

Pobiera z urządzenia określony element sterujący.

Obiekt GameInputDevice przechowuje listę elementów sterujących urządzenia. Dostęp do poszczególnych elementów sterujących na urządzeniu można uzyskać przy użyciu metody getControlAt().

Kolejność elementów sterujących w indeksie może ulegać zmianie przy każdym dodaniu lub usunięciu urządzenia. Aby dopasować wywołanie do określonego elementu sterującego, można sprawdzić właściwość id obiektu GameInputControl.

Elementy sterujące można pobrać nawet, gdy dane urządzenie nie jest włączone. Nie można odczytać wartości elementów sterujących wyłączonego urządzenia. Ta funkcja umożliwia odczytywanie właściwości elementu sterującego przed włączeniem urządzenia, do którego on należy. Za pomocą tej funkcji można ustalić, czy urządzenie jest odpowiednie dla danej aplikacji, zanim urządzenie zostanie włączone.

Parametry

i:int — Indeks obiektu GameInputControl na liście obiektów GameInputControl.

Zwraca
GameInputControl — Obiekt GameInputControl o określonym indeksie.

Zgłasza
RangeError — Gdy indeks jest mniejszy niż zero lub większy niż (numControls - 1).

    startCachingSamples

()metoda 
public function startCachingSamples(numSamples:int, controls:Vector.<String>):void

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 3.7

Zleca danemu urządzeniu przechowywanie wartości próbek w buforze. Właściwość sampleInterval określa częstotliwość pobierania próbek. Parametr numSamples określa liczbę próbek przechowywanych w buforze. Parametr controls określa wartości identyfikatorów elementów sterujących, które mają być próbkowane.

Wartości elementów sterujących są zapisywane w buforze w określonej kolejności. Wartości próbek można pobrać przez wywołanie metody getCachingSamples().

Jeśli rozmiar bufora wymagany do przechowywania wartości próbek w pamięci jest większy niż wartość określona w stałej MAX_BUFFER_SIZE, ta metoda generuje błąd MemoryError. Jeśli urządzenie nie zostanie włączone przed wywołaniem tej metody, jest generowany błąd IOError.

Parametry

numSamples:int — Liczba próbek do przechowywania w buforze. Podczas pobierania próbek otrzymywana liczba jest zawsze mniejsza od lub równa wartości parametru numSamples.
 
controls:Vector.<String> — Wektor obiektów String. Każdy obiekt String jest identyfikatorem elementu sterującego. Próbki są zapisywane w kolejności dostarczonej przez ten wektor.


Zgłasza
RangeError — Gdy parametr numSamples ma wartość mniejszą niż lub równą zero albo wpis w parametrze controls jest mniejszy od zera lub większym niż (numControls - 1).
 
ArgumentError — Gdy lista elementów sterujących zawiera nieprawidłowe wpisy, ma wartość null lub nie zawiera ani jednego wpisu.
 
IOError — Gdy ta metoda jest wywoływana względem wyłączonego urządzenia.
 
MemoryError — Gdy rozmiar bufora (liczba wartosci * probki) jest większy niż wartość MAX_BUFFER_SIZE.

    stopCachingSamples

()metoda 
public function stopCachingSamples():void

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 3.7

Powoduje zatrzymanie zapisywania próbek w buforze. Zdarzenia dotyczące zmian, którym podlegają elementy sterujące, nadal są generowane, ale próbki nie są już zapisywane w buforze. Wartości są nadal pobierane z częstotliwością określoną przez właściwość sampleInterval, jednak nie są one przechowywane w buforze. Z tego powodu można pobrać tylko najnowszą wartość.


Zgłasza
IOError — Gdy ta metoda zostanie wywołana bez uprzedniego włączenia urządzenia.
Szczegół stałej
    

MAX_BUFFER_SIZE

Stała
public static const MAX_BUFFER_SIZE:int = 32000

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 3.7

Określa maksymalny rozmiar bufora używanego do przechowywania próbkowanych wartości elementów sterujących. Jeśli parametr startCachingSamples zwraca próbki, które wymagają większej ilości pamięci niż określona, jest generowany błąd pamięci.





[ X ]Dlaczego język angielski?
Treść dokumentacji języka ActionScript 3.0 wyświetlana w języku angielskim

Niektóre części dokumentacji języka ActionScript 3.0 nie są przetłumaczone na poszczególne języki. Gdy element nie jest przetłumaczony na dany język, jest wyświetlany tekst angielski. Na przykład opis klasy ga.controls.HelpBox nie jest przetłumaczony na żaden dodatkowy język. Z tego powodu polska wersja dokumentacji zawiera opis klasy ga.controls.HelpBox w języku angielskim.