์ง๊ธ ํ๋ค๊ฐ ๋ฐ๊ฒฌํ ๋ฌธ์ ์ธ๋ฐ
์ฒ์์ ๋๋ค์ผ๋ก ์ ํ์ง 3๊ฐ๊ฐ ์ฃผ์ด์ง๊ณ ๊ทธ ์ ํ์ง์ ๋ฐ๋ผ์ ๋ฒํผ์ ๋ง๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๋ ๋ฐฉ์์.
์ด๊ฑธ ๋กค์ฒด ๋ฆฌ๋กค๋ง๋ฅ ์๋ก๊ณ ์นจํด์ ๋ฒํผ์ ๊ธฐ๋ฅ๋ ์๋กญ๊ฒ ์๋ก๊ณ ์นจ๋์ด์ผ ํ๋๋ฐ ํด๋ณด๋๊น ๋ฌธ์ ๊ฐ ๋ญ๋๋ฉด
์๋ก๊ณ ์นจ์ ๋๋ฅธ๋งํผ ๋ฒํผ์ ํ๋ฒ ๋๋ ์๋ ํธ์ถ๋๋ ํจ์๊ฐ ๋์ ๋์ด์ ์ฌ๋ฌ๋ฒ ๋ถ๋ฆฐ๋ค๋๊ฑฐ์.
๊ทธ๋๊น ์ฒ์์ ๋ฒํผ๋๋ฅด๋ฉด 1๋ฒ๋ง ํธ์ถ๋๋๋ฐ ์๋ก๊ณ ์นจ์ ๋๋ฒ ๋๋ฅด๋ฉด ๋ด ์๊ฐ์ ์ AddDynamic ๋๋ฌธ์ธ๊ฑฐ๊ฐ์๋ฐ ๋ฒํผ์ ๋๋ฅผ๋ ํธ์ถ๋๋ OnBtnUpgradeClicked๊ฐ ์ด 3๋ฒ์ด ํธ์ถ๋จ.
์ด๊ฑฐ ๋ฌด์จ ๋ฐฉ๋ฒ์ด ์์๊น์?
๋ธ๋ฆฌ๊ฒ์ดํธ ์ดํด๋ฅผ ์๋ชปํ๊ฑฐ๊ฐ์๋ฐ??
์ ๋๋ค์ด๋๋ฏน๊ฐ์๊ฒฝ์ฐ๋ ๋ณดํต ์ด๋์ ๋ผ์ด์ฆ์๋ฃ์ด์ ํ๋ฒ๋ง ํธ์ถํจ
๊ทธ๋ฌ๋ฉด ์๋ก๊ณ ์นจ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ ค๋ฉด ๋ฒํผ์ ๊ธฐ๋ฅ์ด ์๋กญ๊ฒ ๋ฐ๋์ด์ผํ๋๋ฐ ์ด๋ป๊ฒ ํด์ผํจ..? ๋ฒํผ์ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๋๊ฒ OnClicked.AddDynamic์ผ๋ก ์๊ณ ์๋๋ฐ
์ฝ๊ฒ ํ์ด์ค๋ช ํ์๋ฉด ์ ๋๋ค์ด๋๋ฏน::๋ฒํผ๋๋ฅด๊ธฐํจ์๋ฅผ ์ ์์ดํ ๋ฆฌ์คํธ ํจ์์ ๋ฃ์ด๋์ ์ ์์ดํ ๋ฆฌ์คํธํจ์๊ฐ ํธ์ถ๋ ๋๋ง๋ค ๋ฒํผ์ ๊ธฐ๋ฅ์ด ๊ณ์ ์ถ๊ฐ๋๊ฑฐ
์ ์ ๋๋ค์ด๋๋ฏน๋ถ๋ถ์ ๋ฐ์๊ฒ์ด๋ง๋๋ก ์ปจ์คํธ๋ญํธ๋ ์๋๋ฉด ์ด๋์ ๋ผ์ด์ฆ์์ ํ๋ฒ๋ง ํธ์ถํด
์ง๊ธ๋๊ฐ ๋ธ๋ฆฌ๊ฒ์ดํธ์ดํด๋ฅผ ์ ํ๋ชปํ๋๊ฑฐ๊ฐ์ ๊ณต์๋ฌธ์์์ผ๋ ์ฐพ์๋ณด์
์ ์ ์์ดํ ๋ฆฌ์คํธ ํจ์๋ NativeConstruct์์ ์ฒ์์ ํ๋ฒ ํธ์ถ๋จ. ๊ทธ ์ํ์์ ๋ด๊ฐ ์ํ๋๊ฑด ๋ฒํผ์ ๊ธฐ์กด์ ์ถ๊ฐ๋์ด์๋ ๊ธฐ๋ฅ์ ๋ค๋ฅธ๊ฑธ๋ก ๋ฐ๊พธ๊ณ ์ถ์๋๊ฑฐ์. ๋ธ๋ฆฌ๊ฒ์ดํธ๋ฅผ ์ดํด๋ชปํ๊ฑด ์๋๊ณ AddDynamic์ด ํธ์ถ๋ ๋๋ง๋ค ๊ธฐ๋ฅ์ด ๋์ ๋์ด์ ์ถ๊ฐ๋๋๊ฑฐ๋ ์๊ฐ๋ชปํ์..
์ ์ ๋ง ๋ญ๋ง์ธ์ง ์ดํด๋๊ฑฐ๊ฐ์....
์ ์ง์ง ์ฃ์กํฉ๋๋ค. ์ ๊ฐ ๋ฌด์ง๋ชฝ๋งคํ๋ค์.. ๋ฌด์ํ ๋์ด ์ฉ๊ฐํ๋ค๊ณ ์ง์ง ใ ใ ใ ๋ฌด์จ ๋ง์ธ์ง ์ ํํ๊ฒ ์ดํดํ์ด์. AddDynamic์ด ๊ณ์ ํธ์ถ๋๋๊น ๊ทธ๋๋ง๋ค ๋์ ๋๊ฑฐ์ธ๋ฐ..
๊ฐ์ถ ใ
AddDynamic ํ๊ธฐ์ RemoveAllํ์ ์๋๋ฉดNativeComatruct์ ํ๋ฒ๋ง ํ ๋นํ๋ ๊ฐ
์ฒ์์ Native์์ ํ๋ฒ ํ ๋นํ๊ณ ์๋ก๊ณ ์นจ ๊ธฐ๋ฅ๋๋ฌธ์ ๊ฒฐ๊ตญ ๋ฒํผ์ ๊ธฐ๋ฅ์ด ๋ค๋ฅธ๊ฑธ๋ก ์๋ก ๋ฐ๋์ด์ผํด์ AddDynamic์ ์ผ๋๊ฑด๋ฐ ์ด๋ ๊ฒ๋๋๊ฑด์ค ๋ชฐ๋๋ค์.. RemoveAll ์ฐพ์๋ณด๊ฒ ์ต๋๋ค
๋ฉํฐ๋ง๊ณ ๊ทธ๋ฅ ๋ธ๋ฆฌ๊ฒ์ดํธ๋ก ๋ง๋ค๋ฉด ์ ๋๋์ ๋ฐ์ธ๋์๋๋ฐ ๊ฐ๋ ๋์ ์ํ๊ณ ์๊ฑฐ๋ก ๊ฐ์์ค
๋ฐ์ธ๋๋ ๋ค๋ฅธ๊ณณ์์ ํ๋ฒ๋ง ํ๋ฉด ๋๋๊ฑฐ ์๋?
ใ ใ ๋ง์์.. ๋๋ ์ OnClicked.AddDynamic์ ๊ทธ๋ฅ ๋งค๋ฒ ์๋ก๊ณ ์นจํ ๋๋ง๋ค ํธ์ถํ๋ฉด ๊ฐ์๋ผ์์ง๋์ค ์์๋๋ฐ ๋์ ๋๋ ๊ฑฐ์์. ๊ทธ๋์ ๊ทธ๋ฅ ํ๋ฒ๋ง ํธ์ถํ๋ฉด ๋๋๊ฑฐ์์ด์ ใ ใ ๊ทธ๋์ ์ง๊ธ์ ํ๋ฒ๋ง ํธ์ถ์ํค๋๊ฑฐ๋ก ๋ฐ๊ฟ์ ์๋จ
์ํ์ด
BtnUpgrade_1->OnClicked.RemoveDynamic(this, &UPSShopWidget::OnBtnUpgradeClicked1); BtnUpgrade_1->OnClicked.AddDynamic(this, &UPSShopWidget::OnBtnUpgradeClicked1);