UI 빌더로 UI를 생성하는 방법을 배우고 싶으신가요? 다음 예시를 사용하여 시작하십시오.
UI 빌더에서 UI를 만들려면:
시작하기 전에 먼저 다음을 숙지하십시오.
이 예시에서는 리스트 뷰 런타임 UI 생성 예시의 메인 뷰를 생성합니다. 두 개의 컨테이너가 있는 루트 요소를 배경으로 만듭니다. 한 컨테이너에는 캐릭터 이름 리스트가 있고 또 다른 컨테이너에는 캐릭터 세부 정보가 있습니다. 캐릭터 세부 정보 컨테이너에서 배경과 전경 프레임을 추가합니다. 마지막으로 캐릭터 이름에 두 개의 레이블을 추가합니다. 이 예시에서는 캐릭터 이름 리스트 엔트리 UI를 생성하지 않습니다.
새 프로젝트를 생성한 다음, 화면 전체를 덮는 루트 시각적 요소를 생성합니다. 루트 요소의 배경색을 지정하고 화면 중앙에 있는 모든 자식 요소를 가운데에 배치합니다.
템플릿을 사용하여 Unity에서 프로젝트를 생성합니다.
Window > UI Toolkit > UI Builder를 선택합니다.
UI Builder 창의 Viewport 창 왼쪽 상단에서 File > New를 선택하여 새 UXML 문서를 생성합니다.
이름을 MainView.uxml로 지정하고 저장합니다.
Library에서 VisualElement를 계층 구조 패널로 드래그합니다.
팁: 해당 컨트롤을 더블 클릭하여 계층 구조 패널에 추가할 수도 있습니다.
계층 구조 패널에서 해당 요소를 선택합니다.
인스펙터 패널에서 Flex > Grow가 1인지 확인합니다. 이렇게 하면 flex-grow 프로퍼티가 1로 설정되어 화면 전체를 덮습니다.
모든 자식 요소를 가운데에 배치하려면 Align Items와 Justify Content를 모두 Center로 설정합니다.
Background > Color를 #732526으로 설정합니다.
참고: 기본적으로 컬러의 알파 값은 0이므로 완전히 투명합니다. 컬러를 불투명하게 만들려면 알파 값을 255로 설정합니다.
루트 요소 아래에 새 VisualElement를 생성합니다. 이 요소는 UI의 왼쪽 및 오른쪽 섹션의 부모 컨테이너가 됩니다.
Library에서 VisualElement를 계층 구조 패널의 루트 VisualElement로 드래그합니다.
계층 구조 패널에서 해당 요소를 선택합니다.
인스펙터 패널에서 Flex > Direction을 row로 설정합니다.
Flex > Grow를 0으로 설정합니다.
Size > Height를 350픽셀로 설정합니다.
컨테이너의 자식 요소로 ListView를 추가하여 캐릭터 이름을 저장합니다.
Library에서 ListView를 계층 구조 패널의 해당 컨테이너 VisualElement로 드래그합니다.
계층 구조 패널에서 해당 요소를 선택합니다.
인스펙터 패널에서 Name을 CharacterList로 설정합니다.
Size > Width를 230픽셀로 설정합니다.
Spacing > Margin > Right를 6 픽셀로 설정합니다.
Background > Color를 #6E3925로 설정합니다.
Border > Color를 #311A11로 설정합니다.
Border > Width를 4픽셀로 설정합니다.
Border > Radius를 15픽셀로 설정합니다.
캐릭터 세부 정보 컨테이너를 유지하기 위해 #CharacterList와 동일한 부모 아래에 새 VisualElement를 추가합니다. 사용자가 왼쪽 리스트에서 캐릭터를 선택하면 캐릭터의 사진, 이름, 클래스가 표시됩니다.
Library에서 VisualElement를 계층 구조 패널의 컨테이너 요소로 드래그합니다. 이는 오른쪽에 있는 모든 요소를 고정하는 컨테이너입니다.
계층 구조 패널에서 해당 요소를 선택합니다.
인스펙터 패널에서 Align > Align Items를 flex-end로 설정합니다.
Align > Justify Content를 space-between으로 설정합니다.
오른쪽 컨테이너의 자식으로 또 다른 VisualElement를 추가합니다.
계층 구조 패널에서 해당 요소를 선택합니다.
Flex > Grow를 0으로 설정합니다.
Size > Width를 276픽셀로 설정합니다.
Align 섹션에서 Align Items와 Justify Content를 모두 center로 설정합니다.
Spacing > Padding을 8픽셀로 설정합니다.
Background > Color를 #AA5939로 설정합니다.
캐릭터 세부 정보 컨테이너는 캐릭터 이름 리스트 컨테이너와 동일한 테두리 스타일을 사용합니다. 두 컨테이너에 모두 적용할 USS 클래스를 생성합니다.
MainView.uss로 지정하고 Save를 선택합니다..border를 입력합니다. StyleSheet 패널에 .border 선택자가 표시됩니다..border를 선택합니다.#311A11로 설정합니다.4픽셀로 설정합니다.15픽셀로 설정합니다..border를 캐릭터 세부 정보 컨테이너 VisualElement로 드래그합니다..border를 #CharacterList로 드래그합니다.그러면 UI 레이아웃이 다음과 같이 표시됩니다.
캐릭터 세부 정보 컨테이너에 개별 UI 컨트롤을 추가합니다. 첫 번째 단계는 캐릭터 사진 배경을 추가하는 것입니다.
Library에 있는 VisualElement를 해당 캐릭터 세부 정보 컨테이너로 드래그합니다.
계층 구조 패널에서 해당 요소를 선택합니다.
Size 섹션에서 Width 및 Height를 모두 120픽셀로 설정합니다.
Spacing > Padding을 4픽셀로 설정합니다.
Background > Color를 #FF8554로 설정합니다.
Border > Color를 #311A11로 설정합니다.
Border > Width를 2픽셀로 설정합니다.
Border > Radius를 13픽셀로 설정합니다.
캐릭터 세부 정보 컨테이너의 다음 단계는 실제 이미지의 전경을 추가하는 것입니다.
Library에 있는 VisualElement를 해당 캐릭터 세부 정보 컨테이너로 드래그합니다.
계층 구조 패널에서 해당 요소를 선택합니다.
Name을 CharacterPortrait로 설정합니다.
Flex > Grow를 1로 설정하면 이미지가 사용 가능한 공간을 모두 사용할 수 있습니다.
Background > Scale Mode를 scale-to-fit으로 설정하면 올바른 종횡비를 유지하면서 요소 크기에 맞게 이미지 크기를 조정할 수 있습니다.
캐릭터 세부 사항 컨테이너에 레이블 컨트롤 두 개를 추가하여 선택한 캐릭터의 이름과 클래스를 표시합니다.
Library에서 Label을 계층 구조 패널에 있는 해당 캐릭터 세부 정보 컨테이너로 드래그합니다.
Name을 CharacterName으로 설정합니다.
Library에서 Label을 계층 구조 패널에 있는 해당 캐릭터 세부 정보 컨테이너로 드래그합니다.
Name을 CharacterClass으로 설정합니다.
#CharacterName 요소를 선택합니다.
Text > Font Style을 B로 설정합니다.
Text > Size를 18픽셀로 설정합니다.
Viewport 창에서 File > Save를 선택하여 변경 사항을 MainView.uxml로 저장합니다.
UI 빌더에서는 요소 수가 적어도 요소를 만들고 인라인 스타일만 사용하여 실험할 수 있습니다. UI를 더 복잡하게 빌드할수록 스타일시트를 사용하여 스타일을 더 쉽게 관리할 수 있습니다. UI 빌더에서 스타일시트에 인라인 스타일을 추출할 수 있습니다.
.background를 입력합니다..background 클래스 선택자가 생성되고 루트 시각적 요소의 UI 문서(UXML)가 인라인 스타일 대신 클래스 선택자를 사용하도록 업데이트됩니다.리스트 뷰 런타임 UI 생성 예시 작업을 계속 진행하려면 다른 모든 요소에 대한 스타일을 추출하는 단계를 반복하고 지침에 따라 예시를 만들면 됩니다.