Lambda랑 delegate의 이해가 부족한거 같은데요
476
작성한 질문수 81
AddUIEvent(go, (PointerEventData data) => { go.transform.position = data.position; }, Define.UIEvent.Drag);
여기서 Action<PointerEventData> action 자리에 저 람다식을 넣을 수 있는 이유가 뭔가요?
그리고
GetButton((int)Buttons.PointButton).gameObject.AddUIEvent(OnButtonClicked);
여기서 ObubttonClicked를 Action<PointereventData>에 넣을수 있는 이유가 뭔가요?
답변 2
1
Action<PointerEventData>는
- PointerEventData를 input으로
- void를 output으로 받는 어떤 함수 타입도 받을 수 있으니
lamba를 만들 때 시그니처를 맞춰주면 Action<> 자리에 넣어줄 수 있습니다.
OnButtonClicked도 마찬가지입니다.
delegate 사용법중 Observer 패턴으로 만들기 위해
함수를 '기억'하는 용도도 있지만
그냥 정말 저렇게 함수 자체를 변수도 받는 역할도 합니다.
Pivot을 마우스로 클릭하고 드래그해도 움직이 않아서 혹시 아시는 부분이 있나 해서 문의 남깁니다.
0
16
1
ResourceManager 클래스 관련 질문
1
43
2
몬스터 HP 게이지바 이동
0
24
1
매니저 관련 질문이 있습니다.
0
76
2
비쥬얼 스튜디오에서 unity연결이 없습니다.
0
83
2
UI 기능 관련 질문이 있습니다!
0
74
2
픽셀 좌표 스크린 좌표
0
60
0
전체적으로 코드 읽는게 굉장히 오래 걸리네요...
0
109
2
카메라 #2 수업 캐릭터 쓰러짐 해결
0
98
1
플레이어 움직임이 끝날때, 기울어짐 현상
0
104
1
Input 적용과 관련하여 질문 있습니다.
0
95
1
디버그 불가.. Unity에 연결 불가
0
104
1
달리기 애니메이션 에러
0
101
2
오랜만에 게임을 만들다가 사운드 관련해서 뭔가 궁금한게 있어서 봤습니다
0
75
1
GetKey 오류
0
133
2
에셋을 어디에 올려두신지 알 수 있나요?
0
116
1
재귀호출? 오류나는데 왜 이래요 ?
0
183
6
Animation blending 파라미터 계산
0
77
1
newPos와 to지점이 겹쳐져야 하는거 아닌가요?
0
115
3
오브젝트 복제하니까 자꾸 이런게 뜨면서 꺼집니다
0
98
2
질문있습니다
0
160
2
아 이거 소스코드 같은거 없나요?
0
152
3
질문 드립니다. string.IsNullOrEmpty(name)
0
94
2
@Managers 가 씬에 배치되어 있어도 문제가 되지 않나요?
0
139
2





