유니티 커스텀 에디터(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

 

댓글()