반응형
왼쪽에 보이는 것과 같은 스크롤 뷰를 만들어보자.
퀘스트 페이지는 이런 식으로 구성되어 있다.
Page2는 오른쪽에 표시되는 내용들이 담겨 있다.
foreach (var p in GameManager.instance.ongoingQuests)
{
foreach (var oq in p.Value)
{
GameObject tempSlot = Instantiate(questSlotPrefab, ongoingQuestContents.transform);
tempSlot.GetComponent<QuestSlot>().UpdateSlot(GameManager.instance.quests[oq.NPCName][oq.QID]);
}
}
인벤토리 만드는 것과 비슷하다.
public GameObject 선언해서 프리팹 담아주고 (questSlotPrefab)
객체 만들면서 부모는 스크롤 뷰에 있는 content로 지정 (ongoingQuestContents.transform)
나는 현재 진행 중인 퀘스트 목록을 보여주고 싶어
게임매니저 안에 있는 진행 중 퀘스트 목록을 가져와 반복문으로 뽑았다.
UpdateSlot 함수를 통해 슬롯 안에 퀘스트 내용을 담아주고 슬롯에 표시되는 제목을 바꿔주었다.
스크롤 뷰 안의 content는 이런 식으로 구성하면 된다.
인벤토리 창에서 셀 크기와 Constraint를 조절한 것과 같다.
반응형
'프로그래밍 > 유니티 및 C#' 카테고리의 다른 글
[유니티/C#] 여러 개의 오브젝트 풀링 구현하기 (Dictionary 사용) (0) | 2024.01.30 |
---|---|
[유니티/C#] 책 UI 만들기 (1) | 2024.01.23 |
[유니티 2D/C#] 탑다운 뷰에서 아이템이 바닥에서 튕기는 연출 만들기 (0) | 2023.11.10 |
[유니티/C#] csv 파일을 원하는 타입으로 읽기(Generic 사용) (0) | 2023.11.08 |
[유니티/C#] Scroll View에 유동적인 Text 넣기 (0) | 2023.11.07 |