Unity DropdownField 사용 가이드

개요

DropdownField는 UI에서 사용자가 목록 중에서 값을 선택할 수 있도록 해주는 요소입니다. 사용자가 드롭다운을 클릭하면 여러 옵션이 표시되고, 선택한 값을 기반으로 이벤트를 처리할 수 있습니다.

  • 옵션 선택: 사용자는 드롭다운에서 목록의 값을 선택할 수 있습니다.
  • 이벤트 반응: 선택된 값이 변경될 때 이벤트를 통해 반응할 수 있습니다.
  • UI 빌더 통합: UI 빌더를 사용하여 쉽게 옵션을 추가하고 기본값을 설정할 수 있습니다.

UI 빌더에서 옵션 추가

  1. DropdownField의 인스펙터에서 Choices에 옵션을 쉼표로 구분하여 입력합니다.
  2. 기본값을 설정하려면 Index에 옵션 번호를 입력합니다(0부터 시작).

C# 스크립트에서 DropdownField 생성

다음 코드를 통해 세 가지 옵션이 있는 DropdownField를 생성할 수 있습니다:

var dropdown = new DropdownField("Options", new List<string> { "Option 1", "Option 2", "Option 3" }, 0);
dropdown.RegisterValueChangedCallback(evt => Debug.Log(evt.newValue));
rootVisualElement.Add(dropdown);

스타일 변경

DropdownField의 스타일은 USS 파일을 사용하여 변경할 수 있습니다. 패널 설정을 통해 특정 스타일을 적용할 수 있습니다.

  1. UI 문서(.uxml)를 선택합니다.
  2. 패널 설정을 검색하여 해당 설정을 적용합니다.
  3. 스타일 시트를 할당하여 USS 파일을 설정합니다.

사용 예제

DropdownField의 사례를 보고 싶다면 Unity에서 다음 경로를 통해 샘플을 실행할 수 있습니다: Window > UI Toolkit > Samples > DropdownField.

C# 기본 클래스 및 네임스페이스

  • C# 클래스: DropdownField
  • 네임스페이스: UnityEngine.UIElements
  • 기본 클래스: PopupField_1

주요 속성

아래 표는 DropdownField의 주요 속성을 보여줍니다.

속성명 타입 설명
binding-path string 바인드될 타겟 프로퍼티의 경로
choices string 팝업 메뉴에 표시할 선택 항목 리스트
focusable boolean 요소에 포커스를 맞출 수 있으면 true
index int 현재 선택한 인덱스
label string 필드 옆에 표시될 레이블
tabindex int 포커스 링에서 포커스를 맞출 수 있는 항목 정렬

USS 클래스

아래 표는 DropdownField와 관련된 USS 선택자의 목록입니다.

C# 프로퍼티 USS 선택자 설명
ussClassName .unity-popup-field 타입 요소의 USS 클래스명입니다.
label .unity-popup-field__label 레이블의 USS 클래스명입니다.
input .unity-popup-field__input 입력 요소의 USS 클래스명입니다.
text .unity-base-popup-field__text 텍스트 요소의 USS 클래스명입니다.
arrow .unity-base-popup-field__arrow 화살표 표시의 USS 클래스명입니다.
disabled .unity-disabled 비활성화된 요소의 USS 클래스명입니다.

추가 리소스

이 가이드를 바탕으로 DropdownField를 효과적으로 활용하여 UI를 구성해보세요!