| 패키지 | flash.ui | 
| 클래스 | public final class GameInput | 
| 상속 | GameInput    EventDispatcher   Object | 
| 언어 버전: | ActionScript 3.0 | 
| 런타임 버전: | AIR 3.7 | 
GameInput 클래스는 GameInput API에 대한 진입점입니다. 응용 프로그램과 게임 입력 장치(예: 조이스틱, 게임패드, 터치펜) 간의 통신을 관리하는 데 이 API를 사용할 수 있습니다.
     
     
     이 클래스의 주 목적은 응용 프로그램 플랫폼에 연결된 지원 입력 장치에 대한 액세스를 제공하는 것입니다. 이 정적 클래스는 연결된 입력 장치를 목록에 열거합니다. getDeviceAt(index:int) 메서드를 사용하여 목록의 장치에 액세스할 수 있습니다. 
     
                  numDevices 속성은 플랫폼에 현재 연결된 입력 장치의 수를 제공합니다. 이 값을 사용하여 장치 목록의 상한을 결정합니다.
     
이 클래스의 인스턴스를 사용하여 입력 장치의 추가 및 제거를 알리는 이벤트를 수신합니다. 이러한 이벤트를 수신하려면 다음을 수행합니다.
- 
                        
GameInput클래스의 인스턴스를 만듭니다. - 
                        
GameInputEvent.DEVICE_ADDED및GameInputEvent.DEVICE_REMOVED이벤트에 대한 이벤트 리스너를 추가합니다. 참고로, 이벤트는 클래스의 인스턴스에서만 등록될 수 있습니다. 
     이 클래스는 또한 GameInput API가 현재 플랫폼에서 지원되는지 여부를 나타내는 isSupported 플래그를 지정합니다. 
자세한 내용은 Adobe Air Developer Center 문서 Adobe AIR의 게임 컨트롤러를 참조하십시오.
Android의 경우 이 기능은 Android OS 버전 4.1 이상을 지원하며 SWF 버전 20 및 네임스페이스 3.7 이상이 필요합니다. iOS의 경우 이 기능은 iOS 버전 9.0 이상을 지원하며 SWF 버전 34 및 네임스페이스 23.0 이상이 필요합니다.
동일 장치 사이에서 단일 게임 입력 장치를 감지하는 방법
둘 이상의 플레이어를 위한 게임의 경우 일반적으로 동일한 여러 장치에서 단일 장치를 감지해야 합니다. 예를 들어 응용 프로그램은 각 "플레이어 1", "플레이어 2", ..., "플레이어 N"이 나타내는 장치가 무엇인지 확인해야 하는 경우가 있습니다.
해결 방법:
- 
       감지되지 않은 모든 입력 장치에서 각 컨트롤에 이벤트 리스너를 추가합니다. 이 이벤트 리스너는 컨트롤 값이 변경될 때마다 전달되는 
Event.CHANGE이벤트를 수신합니다. - 버튼이 눌러지거나 트리거가 당겨지는 경우와 같이 컨트롤이 처음 활성화되면 응용 프로그램은 해당 장치에 레이블을 지정합니다.
 - 그런 다음 감지되지 않은 나머지 입력 장치의 이벤트 리스너를 모두 제거합니다.
 - 감지되지 않은 나머지 입력 장치를 모두 식별하도록 1-3 단계를 반복해야 합니다.
 
관련 API 요소
| 속성 | 정의 주체 | ||
|---|---|---|---|
![]()  | constructor : Object 
	 지정된 객체 인스턴스의 클래스 객체 또는 생성자 함수에 대한 참조입니다.  | Object | |
|     isSupported : Boolean [정적] [읽기 전용] 
         현재 플랫폼이 GameInput API를 지원하는지 여부를 나타냅니다.  | GameInput | ||
|     numDevices : int [정적] [읽기 전용] 
         연결된 입력 장치의 수를 제공합니다.  | GameInput | ||
| 메서드 | 정의 주체 | ||
|---|---|---|---|
![]()  | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void 
	리스너에서 이벤트 알림을 받을 수 있도록 EventDispatcher 객체에 이벤트 리스너 객체를 등록합니다.  | EventDispatcher | |
![]()  | 
	이벤트를 이벤트 흐름으로 전달합니다.  | EventDispatcher | |
[정적] 
         연결된 입력 장치 목록에서 지정한 인덱스 위치의 입력 장치를 가져옵니다.  | GameInput | ||
![]()  | 
	EventDispatcher 객체에 특정 유형의 이벤트에 대한 리스너가 등록되어 있는지 여부를 확인합니다.  | EventDispatcher | |
![]()  | 
	 지정된 속성이 객체에 정의되어 있는지 여부를 나타냅니다.  | Object | |
![]()  | 
	 Object 클래스의 인스턴스가 매개 변수로 지정된 객체의 프로토타입 체인에 있는지 여부를 나타냅니다.  | Object | |
![]()  | 
	 지정된 속성이 존재하고 열거 가능한지 여부를 나타냅니다.  | Object | |
![]()  | 
	EventDispatcher 객체에서 리스너를 제거합니다.  | EventDispatcher | |
![]()  | 
     루프 작업에서 동적 속성을 사용할 수 있는지 여부를 설정합니다.  | Object | |
![]()  | 
	 로캘별 규칙에 따라 서식이 지정된 이 객체의 문자열 표현을 반환합니다.  | Object | |
![]()  | 
	 지정된 객체의 문자열 표현을 반환합니다.  | Object | |
![]()  | 
	 지정된 객체의 프리미티브 값을 반환합니다.  | Object | |
![]()  | 
	이 EventDispatcher 객체 또는 조상 객체에 지정한 이벤트 유형에 대한 이벤트 리스너가 등록되어 있는지 여부를 확인합니다.  | EventDispatcher | |
| 이벤트 | 요약 | 정의 주체 | ||
|---|---|---|---|---|
![]()  | [브로드캐스트 이벤트] Flash Player 또는 AIR 응용 프로그램이 운영 체제 포커스를 얻어 활성화될 때 전달됩니다. | EventDispatcher | ||
![]()  | [브로드캐스트 이벤트] Flash Player 또는 AIR 응용 프로그램이 운영 체제 포커스를 잃고 비활성화될 때 전달됩니다. | EventDispatcher | ||
| 플랫폼에서 게임 입력 장치가 연결되거나 이미 연결된 장치의 전원이 켜진 경우에 전달됩니다. | GameInput | |||
| 플랫폼에서 게임 입력 장치가 제거되거나 연결된 장치의 전원이 꺼진 경우에 전달됩니다. | GameInput | |||
| 게임 입력 장치가 연결되어 있지만 사용 가능한 상태가 아닌 경우 전달됩니다. | GameInput | |||
    isSupported | 속성 | 
    numDevices | 속성 | 
getDeviceAt | () | 메서드 | 
 public static function getDeviceAt(index:int):GameInputDevice| 언어 버전: | ActionScript 3.0 | 
| 런타임 버전: | AIR 3.7 | 
연결된 입력 장치 목록에서 지정한 인덱스 위치의 입력 장치를 가져옵니다.
         인덱스에서 장치 순서는 장치가 추가 또는 제거될 때마다 변경될 수 있습니다. GameInputDevice 객체의 name 및 id 속성을 통해 특정 입력 장치와 일치하는지 확인할 수 있습니다.
         
매개 변수
index:int — 입력 장치 목록의 인덱스 위치입니다.
          | 
GameInputDevice — 지정한 GameInputDevice입니다.
         
          | 
오류
RangeError  — 제공된 인덱스가 0보다 작거나 (numDevices - 1)보다 큰 경우입니다. 
          | 
deviceAdded | 이벤트 | 
deviceRemoved | 이벤트 | 
deviceUnusable | 이벤트 | 
flash.events.GameInputEvent게임 입력 장치가 연결되어 있지만 사용 가능한 상태가 아닌 경우 전달됩니다. 이 이벤트는 Windows와만 관련이 있습니다. 예를 들어 다른 DirectInput 기반 응용 프로그램이 이미 해당 장치를 사용하고 있는 경우 Windows 샌드박스 브라우저에서 발생합니다.
Tue Jun 12 2018, 03:17 PM Z
 
 상속되는 공용 속성 숨기기
 상속되는 공용 속성 표시