📕학습 개요

열거형(Enum)을 쓰다 보면 영어로 정의된 까닭에 UI 등에 한글로 표시하고 싶을 때 불편함을 겪곤 한다. 물론 유니티와 C# 컴파일러는 유니코드를 지원하기 때문에 열거형 멤버를 한글로 작성해도 문법적인 에러는 발생하지 않는다. 하지만 직렬화나 호환성 문제 등이 존재하기에 권장되는 방식은 아니다.

// Warriot, Mage가 아닌 전사, 마법사로 표시하고 싶다!
public enum ClassType
{
    None,
    Warrior,        //전사
    Mage,           //마법사
    Archer,         //궁수
    Thief,          //도적
}

오늘은 C#에서 제공하는 Description Attribute를 통해 열거형의 description 을 따로 정의하고 불러오는 방식에 대해 알아보았다.


📖학습 내용

Enum에서 Description 정의

사용법은 매우 간단하다. 열거형에 있는 각 요소들에 [Description(" ")] 이런 식으로 적어주면 된다.

public enum ClassType
{
    [Description("없음")]
    None,
    [Description("전사")]
    Warrior,        //전사
    [Description("마법사")]
    Mage,           //마법사
    [Description("궁수")]
    Archer,         //궁수
    [Description("도적")]
    Thief,          //도적
}

Description 읽어오기

classText.text = data.classType.GetDescription();

댓글남기기