UI 툴킷은 이벤트 시스템을 사용하여 입력을 처리하고 모든 활성 패널에 이벤트를 전송합니다.
UI 툴킷의 이벤트 시스템은 IMGUI 및 레거시 입력 관리자로부터 이벤트를 수신할 수 있습니다.내비게이션 이벤트는 레거시 입력 관리자에 정의된 축에서 생성됩니다.다른 이벤트는 IMGUI 이벤트 대기열에서 가져옵니다.
특정 경우를 제외하고는 이벤트 시스템을 사용하기 위해 씬에 컴포넌트를 추가하지 않아도 됩니다.
씬에서 두 개 이상의 패널 설정 에셋을 사용하는 경우 이벤트 시스템은 정렬 순서에 따라 해당 패널에 포인터 이벤트를 전송합니다.포인터 이벤트는 패널이 반응할 때까지 패널을 통해 전파됩니다.
이벤트를 사용하여 포커스가 맞춰진 요소에 영향을 주는 첫 번째 패널이 해당 이벤트 시스템에 대해 포커스가 맞춰진 패널이 됩니다.해당 패널은 다른 이벤트가 발생하여 다른 패널이 포커스가 맞춰진 패널이 될 때까지 키보드 이벤트를 계속 수신합니다.
참고:이벤트의 전파를 중지하는 것과 요소에 포커스를 부여하는 것은 별개의 문제입니다.예를 들어 버튼을 클릭하면 전파를 중지하고 해당 버튼을 눌렀을 때만 반응하도록 허용되지만, 버튼이나 일반적으로 클릭한 포커스 가능한 요소에 포커스를 부여하는 것처럼 클릭에 대한 다른 기본 동작을 막지는 않습니다.
UI 툴킷 UI 문서와 uGUI 컴포넌트를 동시에 사용할 수 있습니다.
씬에서 첫 번째 uGUI 요소를 추가하면 Event System과 Standalone Input Module이 씬에 자동으로 추가됩니다.
이벤트 시스템은 씬을 읽고 이벤트를 실행하는 반면, 스탠드얼론 입력 모듈은 입력을 해석하고 이벤트 실행을 요청합니다.스탠드얼론 입력 모듈을 다른 입력 모듈로 교체할 수 있습니다.다른 입력 모듈은 소비되는 입력을 변경하지만 모든 이벤트는 여전히 이벤트 시스템을 거쳐 실행됩니다.
UI 툴킷은 패널의 정렬 순서를 사용하고 이를 uGUI 캔버스 및 기타 유효한 레이캐스트 타겟의 정렬 순서와 비교하여 포인터 이벤트를 UI 툴킷 요소로 보낼지, uGUI 오브젝트로 보낼지 또는 씬의 다른 항목으로 보낼지를 결정합니다.마찬가지로 UI 툴킷은 이벤트 시스템의 currentSelectedGameObject
를 설정하여 UI 툴킷 패널이 포커스를 받으려 할 때 다른 uGUI 오브젝트에서 포커스를 제거하고, uGUI 오브젝트가 선택되면 UI 툴킷 패널이 자동으로 포커스를 잃습니다.
이벤트 시스템을 수동으로 추가하려면 GameObject > UI > Event System을 선택합니다.
UI 툴킷(및 uGUI)을 다른 입력 시스템과 함께 사용하는 경우, 다른 입력 모듈과 이벤트 시스템을 선택해야 합니다.
다음 표에서는 각 입력 시스템 사용에 필요한 컴포넌트와 설정에 대해 설명합니다.
사용법 | 필수 컴포넌트 | 액티브 입력 핸들링 |
---|---|---|
레거시 입력 관리자가 있는 UI 툴킷 요소 | 기본 이벤트 시스템을 사용합니다.씬 컴포넌트가 필요없습니다. | Input Manager (Old). |
Input System 패키지가 포함된 UI 툴킷 요소 | Input System UI Input Module 및 Event System 컴포넌트 | Input System Package (New) |
레거시 입력 관리자가 있는 UI 툴킷 요소 및 uGUI 컴포넌트 | Standalone Input Module 및 Event System 컴포넌트 | Input Manager (Old) 또는 Both. |
Input System 패키지가 있는 UI 툴킷 요소 및 uGUI 컴포넌트 | Input System UI Input Module 및 Event System 컴포넌트 | Input System Package (New) 또는 Both |
Edit > Project Settings > Player > Active Input Handling에서 Active Input Handling 설정을 찾을 수 있습니다.
Input System 패키지와 함께 UI 툴킷을 사용할 수 있습니다.
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.