사생활 보호 설정
https://gamjia.tistory.com
Updated News
Mini Rooms
답글수 [0]
What Friends Say
한마디로 표현해봐~
1촌평 관리
Unity For문 안의 AddListener
GamJia 2023. 9. 5. 14:18
원래 이런식으로 버튼 길이만큼
AddListener를 추가하려고 했는데
자꾸 마지막 기능만 활성화 되는거다.......
// Before for(int i=0;i<_toppingButtons.Length;i++) { _toppingButtons[i].onClick.AddListener(() => { int temp=i; Topping.instance.SetTopping(i); }); }
알고보니 for문 안에서 같은 변수 i를
람다식에 참조형태로 주었기 때문에
Closure Problem이 발생한 것....
그래서 아래와 같이 바꿨고 잘 작동한다
// After for(int i=0;i<_toppingButtons.Length;i++) { int temp=i; _toppingButtons[temp].onClick.AddListener(() => { Topping.instance.SetTopping(temp); }); }