반응형
Notice
Recent Posts
Recent Comments
Link
안 쓰던 블로그
유니티 SetActive(false) 되어있는 오브젝트 찾기 본문
반응형
씬 구성은 이렇고, 뒤에 통장을 누르면 1) 회색 화면을 깔고 2) 그 위에 처리, 거절 버튼이 위에 올라왔으면 좋겠다
처음부터 회색 화면과 처리, 거절이 보이면 안 되니까 void start()에다가 SetActive(false)를 넣어서 시작 하자마자 비활성화를 했다
GameObject.Find("gray").SetActive(false);
GameObject.Find("처리").SetActive(false);
GameObject.Find("거절").SetActive(false);
근데 이러면 문제가, 통장을 눌렀을 때 회색, 처리, 거절 오브젝트를 find하고 SetActive(true);를 해야 하는데 false인 오브젝트는 find가 안 된다
해결 방법은 활성화된 부모를 찾아서 비활성화된 자식을 찾으면 된다
gray오브젝트는 image, 처리와 거절은 button으로 셋 다 UI로써 부모를 Canvas로 두고 있다
Canvas는 활성화되어 있으니까 Canvas를 find하고 findchild로 비활성화된 자식들을 찾으면 된다
GameObject.Find("Canvas").transform.FindChild("gray").gameObject.SetActive(true);
GameObject.Find("Canvas").transform.FindChild("처리").gameObject.SetActive(true);
GameObject.Find("Canvas").transform.FindChild("거절").gameObject.SetActive(true);
부모가 Canvas가 아니더라도 활성화된 부모면 뭐든 상관없다
GameObject.Find("활성화된 부모 오브젝트").transform.FindChild("비활성화된 자식 오브젝트").gameObject.SetActive(true);
반응형
'유니티 > 개발' 카테고리의 다른 글
GridLayoutGroup에 소속된 오브젝트의 position 가져오기 (0) | 2021.08.01 |
---|---|
유니티 안드로이드 APK, AAB 빌드 방법 2021 ver (쉬운방법) (4) | 2021.07.03 |
유니티 UI 클릭할 때 사이즈 확대, 축소, 중앙 이동(UI 오브젝트의 크기 변경, RectTransform) (0) | 2020.09.20 |
유니티 C# 코드 정리하기-GetComponentsInChildren 사용 (0) | 2020.04.14 |
유니티 GetComponentsInChildren이 안 될 때 해결 방법(길이가 0이라고 뜰 때) (4) | 2020.04.13 |
Comments