유니티

Action과 UnityAction의 차이

bugmin 2024. 7. 28. 21:07

유니티에서 굳이 Action이 있는데 UnityAction을 써야하나라는 고민이 든 적이 있다.

 

왜냐면 Action 사용에 있어 문제를 못느꼈고 차이점에 대해 알지 못했기 때문이다.

하지만 문제 상황을 겪고야 말았다.

 

바로 아래와 같은 문제이다.



버튼에 AddListener를 통해 이벤트를 추가해주는 함수인 AddOnClickEvent를 만들었는데

Action으로 이벤트를 받으니 빨간줄이 뜨면서 오류가 난다.

 

AddListener 함수를 들여다보면

 

유니티 액션을 매개변수로 받고 있음을 알 수 있음

 

고로 UnityAction으로 수정하면 사용이 가능하다.

 

AddListener와 같이 이벤트로 Action을 받지 못하는 함수의 경우 UnityAction을 쓰게 된다.