유니티 커스텀 에디터(3) - 토글 넣기
이번 목표 : 토글 넣기!
이번엔 EditorGUILayout라는 클래스에서 함수를 찾아다 쓸 것입니다.
그 이유는 다음 포스팅에 설명될 것입니다.
어쨌든 EditorGUILayout의 Toggle이라는 함수를 작성하여
앞의 두 매개변수(라벨, 불리언)를 채워 줍니다.
그리고 창을 열여 보면
이렇게 토글이 라벨 뒤에 나오는 것을 확인할 수 있습니다.
하지만 문제가 있습니다.
토글을 아무리 눌러도 체크가 되질 않는다는 것입니다.
그 이유는 해당 토글은 선언할 때부터 해당 토글은 false라고 해두어서
버튼을 누르면 순간적으로 true가 되지만 다음 프레임에서 false가 되면서 변화가 없는 것처럼 보이기 때문입니다.
그래서 이렇게 bool 전역변수를 하나 선언해두고,
OnOffToggle = EditorGUILayout.Toggle("이건 토글 이다!!!", OnOffToggle);
해당 변수에 그 값을 담아 다시 받아오면,
이렇게 문제가 해결된 것을 볼 수 있습니다.
http://www.devkorea.co.kr/reference/Documentation/ScriptReference/EditorGUILayout.html
유니티 스크립트 레퍼런스 – EditorGUILayout
EditorGUILayout Auto-layouted version of EditorGUI 참고: 이것은 에디터 클래스입니다. 그것을 사용하려면 프로젝트 폴더 안 어셋(Assets)/에디터 의 스크립트를 삽입해야 합니다. 에디터 클래스는 유니티에디터(UnityEditor) 네임스페이스(namespace)안에 있고 스크립트 시작부분의 "유니티에디터(UnityEditor)를 사용하여;" 추가하려면 C# 스크립트가 필요하다. 클래스 함수 LabelField 라
www.devkorea.co.kr
'게임 개발 사전 > 유니티 엔진' 카테고리의 다른 글
유니티 커스텀 에디터(5) - 텍스트 필드(TextField) 넣기! (0) | 2019.07.13 |
---|---|
유니티 커스텀 에디터(4) - GUILayout와 EditorGUILayout. (0) | 2019.07.13 |
유니티 커스텀 에디터(2) - 라벨(소제목) 넣기 (0) | 2019.07.13 |
유니티 커스텀 에디터(1) - 창 만들기 (0) | 2019.07.13 |
SRP - LWRP와 HDRP 차이 (0) | 2019.07.13 |