์ฝ๋๋ฆฌ๋ทฐ๋ฅผ ํ๋ฉด์ ๊ทธ๋์ ๋ฉ๋ชจ๋ฆฌ ๋์ ๋ฐฉ์ง๋ฅผ ์ํด ์ฌ์ฉํ๊ณ ์์๋[ weak self ]์ ๋ํด์ ๋ค์ ํ๋ฒ ์๊ฐํด๋ณด๋ ์ข์ ๊ธฐํ๊ฐ ์๊ฒผ๋ค. 1. weak self๋ฅผ ์ฌ์ฉํ๋ ์ด์ ๋ฉ๋ชจ๋ฆฌ ๋์๋ฅผ ๋ฐฉ์งํ๊ณ ๊ฐํ ์ฐธ์กฐ ์ฌ์ดํด์ ํผํ๊ธฐ ์ํด์ ์ฌ์ฉํ๋ค. Swfit์ ARC๋ ๊ฐ์ฒด์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ด๋ฆฌํ๋ฉฐ, ๊ฐ์ฒด๊ฐ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ผ๋ฉด ์๋์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํด์ ํ๋ค. ํ์ง๋ง ๊ฐ์ฒด๋ค์ด ์๋ก ๊ฐํ๊ฒ ์ฐธ์กฐํ ๊ฒฝ์ฐ, ARC๋ ์ด ์ฐธ์กฐ๋ฅผ ๋์ง ๋ชปํ๊ณ ๋ฉ๋ชจ๋ฆฌ๊ฐ ํด์ ๋์ง ์๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ค.์ด๋ฌํ ์ํฉ์ ๊ฐํ ์ฐธ์กฐ ์ฌ์ดํด์ด๋ผ๊ณ ํ๋ค. 2. ๊ฐํ๊ฒ ์ฐธ์กฐํ๋ ๊ฒฝ์ฐ๋ ์ด๋ค ์ํฉ์ ๋งํ๋๊ฑฐ์ง? ๊ฐ์ฒด๋ค์ด ๊ฐํ๊ฒ ์ฐธ์กฐํ๋ค๋ ๊ฒ์, ํ ๊ฐ์ฒด๊ฐ ๋ค๋ฅธ ๊ฐ์ฒด๋ฅผ ์์ ํ๋ฉด์๊ทธ ๊ฐ์ฒด๊ฐ ๋ฉ๋ชจ๋ฆฌ์์ ํด์ฒด๋์ง ์๋๋ก ์ฐธ์กฐ ์นด์ดํธ๋ฅผ ์ฆ๊ฐ์..
๐ฆ Final/๐ ์ต์ข ํ๋ก์ ํธ
ํ
์ด๋ธ๋ทฐ ์ ์ฒด์ cornerRadius๋ฅผ ์ฃผ๊ณ ์ถ์๋ฐ ์ ์ฉ์ด ๋์ง ์๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค. ์์ญ์ ํ์ธํด๋ณด๊ณ ์ ๋ฐฑ๊ทธ๋ผ์ด๋์ปฌ๋ฌ๋ฅผ ์ฃผ๊ณ ํ์ธํด๋ณด๋ ์
๋ถ๋ถ์ด ์ ์ฉ์ด ๋์ง ์์๋ค. ๊ทธ๋์ ์ ์ฉ์ ํด๋ดค๋๋ฐ ์ ๋์ง ์์๋ค. ์ฌ์ค cell์ ์ ์ฉ์ ํด์ฃผ๊ณ ์ถ์๋ฐ ์ฌ๊ธฐ์์๋ ์ด๋ป๊ฒ ์
์ ์ค์ผํ ์ง ๊ณ ๋ฏผ์ด์๋ค. ํ์๋ค๊ณผ ์๊ธฐ๊ฐ ๋์จ ๊น์ ์ด๊ฒ ์ ๊ฒ ๋ง์ด ์๋ ํด๋ณธ ๊ฒฐ๊ณผ...ใ
ใ
ใ
๊ทธ๋์ contentView์ self ๋ญ๊ฐ ๋ค๋ฅธ๊ฑฐ์ง..?๋ด๊ฐ ํ๊ณ ์ถ์๋ ๊ฒ์ ํ์ฌ ํ
์ด๋ธ๋ทฐ์๋ง cornerRadius ์ ์ฉ์ด ๋๊ณ ์๊ธฐ ๋๋ฌธ์cell์๋ cornerRadius์ ์ฃผ๊ณ ์ถ์๋ ๊ฒ! self: ์
์์ฒด๋ฅผ ์๋ฏธํ๋ค. ์ฆ, UITableViewCell ํด๋์ค์ ์ธ์คํด์ค์ด๋ค.์
์ ์ ์ฒด ์์ญ์ ๋ด๋นํ๋ฉฐ, ์
์ ๋ฐฐ๊ฒฝ์, ๊ฒฝ๊ณ์ ..
APIKey ๋ฐ ์ธ๋ถ ๋
ธ์ถ ์ ๋ณด์์ ๋ฌธ์ ๊ฐ ์๋ ์ฝ๋๋ค์ ๊ธฐ๋กํด๋๋ SecretsConfig.xcconfig ํ์ผ์ ๋ง๋ค๊ณ ๊น ์ด๊ทธ๋
ธ์ด์ ์ถ๊ฐํ์์ผ๋ ์ปค๋ฐ ์ ๊ณ์ Xcode์์ ์ฌ๋ผ๊ฐ๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค. ์ค๋ ์ค์ ์คํฌ๋ผ ๋ ๋ฐ์ํ ๋ฌธ์ ๋,ํ์๋ค๊ณผ ๊น์ด๊ทธ๋
ธ์ด์ *.xcconfig ์ด์ธ์ ๊ตฌ์ฒด์ ์ธ SecretsConfig.xcconfig์ ์ ์ฉ์ด ๋๋์งํ์ธ ํด๋ณด๋ ๊ณผ์ ์ค ์ค์๋ก ํ์ผ์ด ์ปค๋ฐ๊น์ง ์งํ๋ ์ํ์๋ค.(์์ง ๋ก์ปฌ์์ ์ปค๋ฐ์ ํ๊ณ ํธ์ฌ๋ ํ์ง ์์ ๊นํ๋ธ์ ์ฌ๋ผ๊ฐ์ง ์์ ์ํ) ์ฌ๊ธฐ์ ํธ์ฌ๋ฅผ ํ๊ฒ ๋๋ฉด, ์๋กญ๊ฒ ์ถ๊ฐ๋ APIKey๋ค์ด ๋ชจ๋ ๊นํ๋ธ์ ์ฌ๋ผ๊ฐ๊ฒ ๋๋ ์ํฉ... 1. .gitingore๊ฐ ์ ์ฉ์ด ์๋๊ณ .xcconfig ํ์ผ์ ํฌํจ์์ผ์ → ๊น ์บ์ฌ ์ญ์ git rm -r --cach..
๋ฌธ์ ์ 1๊ณต๊ณต๋ฐ์ดํฐํฌํธ์์ ์ ๊ณต๋๋ ํค๋ ์ธ์ฝ๋ฉ์ด ํ ๋ฒ๋ ์๋น์คํค๋ค. urlComponents์ queryItems๋ฅผ ํตํด์ ์ฟผ๋ฆฌํ๋ผ๋ฏธํฐ๋ฅผ ์ค์ ํ๋ url์ ์์ฑํ๋ ๊ณผ์ ์์ํ๋ฒ ๋ ์ธ์ฝ๋ฉ์ด ๋์ด 2๋ฒ ์ธ์ฝ๋ฉ์ด ๋๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค. ์ธ์ฝ๋ฉ์ด 2๋ฒ๋จ์ ๋ฐ๋ผ, ์์ฑ๋ url์ ์ฃผ์๊ฐ ๋ฌ๋ผ์ ธ ์๋ฒ๋ก ๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ฌ ์ ์์๋ค. ๋ฌธ์ ํด๊ฒฐ1 ํด๋น ์ฌํญ์ ๊ตฌ๊ธ๋ง์ ํตํด ์ธ์ฝ๋ฉ์ด ๋๋ฒ ๋์ด ๋ฐ์ํ ๋ฌธ์ ๋ผ๋ ๊ฒ์ ๋ฐ๊ฒฌํ ์ ์์๋ค. ์ธ์ฝ๋ฉ์ด ๋ ๋ฒ๋ ๊ฒ์ด ๋ฌธ์ ์์ผ๋ฏ๋ก, ๋์ฝ๋ฉ์ ํด์ค๋ค. ๊ณต๊ณต๋ฐ์ดํฐํฌํธ์ ๋ง์ดํ์ด์ง์ ๋ค์ด๊ฐ๋ฉด ์ธ์ฝ๋ฉ๋ ์ธ์ฆํค์ ๋์ฝ๋ฉ๋ ์ธ์ฆํค ๋ ๋ค ์ ๊ณตํ๊ณ ์๋ค. ๊ธฐ๋ณธ ์ธ์ฝ๋ฉ๋ ํค๋ฅผ ์ฌ์ฉํด ์๋์ ๊ฐ์ด removingPercentEncoding ํ๋กํผํฐ๋ฅผ ์ฌ์ฉํด์ ๋์ฝ๋ฉํ ์๋ ์๋ค. ๋๋ณด๊ธฐ..
1. ๊ณต๊ณต๋ฐ์ดํฐํฌํธ์์ ์ ๊ณตํ๋ ์๋น์คํค๋ ์ผ๋จ ์ธ์ฝ๋ฉ๋ ํค๋ฅผ ์ ๊ณตํ๋ค.๊ทธ๋์ ์๋์ ๊ฐ์ด %์ ๊ฐ์ด ๋ณํ๋๋ ๊ฒ์ ๋ณผ ์ ์๋ค. // ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณตํ๋ ์ธ์ฝ๋ฉ๋ ํค(์๋น์คํค ์ผ๋ถ ์ญ์ )https://apis.data.go.kr/1160100/service/GetMarketIndexInfoService/getStockMarketIndex?serviceKey=qfXqzDLVVPW1Ks0oWU%2Bm8Z9JphEfjCDxm7GMBUkVC4GoPQshE%2B8Uk%2BQ%3D%3D&์ด๋ ๊ฒ ํฌ์คํธ๋งจ์ด๋ ๊ณต๊ณต๋ฐ์ดํฐํฌํธ์์ ํ
์คํธํด๋ณด๋ฉด ์ ๋๋ก ๋์ค์ง๋ง, ์ฝ๋์์ผ๋ก๋ ๋์ค์ง ์๋๋ค. ๋ค๋ฅธ API๋ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์ฌ์ฉํ๋ ์ด๊ฑด ์ ๋๋ก ๋์์ ๋ ์ ์๋๋์ง ์ ๋ชจ๋ฅด๊ฒ ๋ค. -> ๊ทธ๋ผ ์ธ์ฝ๋ฉ์ ๋ป์ด ์ ํํ๊ฒ ๋ฌด์..
์ต์ข
ํ๋ก์ ํธ์์ ํ์ด์ด๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํ ์นด์นด์ค๋ก๊ทธ์ธ ๊ธฐ๋ฅ์ ๊ตฌํํ๊ณ ์๋ ์ค์ด๋ค. ๊ทธ ๊ณผ์ ์ค์๋ SDK๋ฅผ ์ด๊ธฐํ ํ๋ ์ฝ๋๋ฅผ ์ถ๊ฐํ๊ณ ๋ค์ดํฐ๋ธ ์ฑ ํค๋ฅผ ์ ์ด์ค์ผํ๋ ๋ถ๋ถ์ด ์์๋ค. ๊ทธ๋์์๋ ๊ฐ์ธ์ ์ธ ๊ณผ์ ๋ฅผ ํ๋ค๋ณด๋ ํฌ๊ฒ ์ ๊ฒฝ์ ์ฐ์ง ์์๋ ๋ถ๋ถ์ด์์ผ๋, ์๋ฌด๋๋ ํํ๋ก์ ํธ์ด๊ณ ์ค์ ๋ก ์์ฉํ๊ฐ ๋ ๊ฒ์ ๊ณ ๋ คํ๊ฒ ๋์๋ค. ๊นํ๋ธ์ ๋ฐ๋ก ํธ์ฌ๋ฅผ ํ๋ค๋ฉด ๋ณด์์ ์ธ ์ธก๋ฉด์์ ๋งค์ฐ ์ทจ์ฝํ ๊ฒ์ด๋ผ๋ ์๊ฐ์ด ๋ค์ด ์ฐพ์๋ณด๊ฒ ๋์๋ค. ์ฌ์ฉ๋ฒ 1. .xconfig ํ์ผ ์์ฑ 2. .xconfig ํ์ผ์ API Key ์ถ๊ฐ 3. PROJECT์ Info์์ config ํ์ผ์ ์ค์ ๊ธฐ๋ณธ์ ์ผ๋ก Debug์ ์ค์ ์ ํด์ฃผ๊ณ ์ถ์ ์์ ๊น์ง ์๋ค๋ฉด Release๋ ์ค์ ์ ํด์ฃผ๋ฉด ๋๋ค.๋๋ ์ฑ์ด ์ค์ ๋ก ์ถ์๋๊ธฐ ๋๋ฌธ์ Rel..
ํ์จ๊ณผ ์ฝ์คํผ ์ ๋ณด๋ ํด์ธ ์๊ฐ์ ๊ธฐ์ค์ผ๋ก ํ๊ฒ ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์๋ค.์ฌ๊ธฐ์ ๋ฐ์ํ๋ ์์ฐจ ๋ฐ ๊ณตํด์ผ/ํด์ผ ๋ฑ์ผ๋ก ํ๊ตญ์์ ์ค๋์ ๋ ์ง๋ก api๋ฅผ ์์ฒญํ๋ฉด๋ฐ์ดํฐ๊ฐ ์์ด์ nil์ธ ๊ฒฝ์ฐ๊ฐ ๋ง์๋ค. ๋ง์ผ, ๋ฏธ๊ตญ์ด ์ค๋๊ณผ ์ด์ ๊ฐ ๊ณตํด์ผ ๋๋ ํด์ผ์ด์ด๋ค๋ฉด?ํ๊ตญ์๋ ์ค๋์ด์ง๋ง ๋ฏธ๊ตญ์์๋ ์์ฐจ๋ก ์ธํด ์์ง ์ค๋์ด ์๋๋ผ๋ฉด? ์ด๋ฐ ์ํฉ์์๋ ๋ฐ์ดํฐ๋ฅผ ์ ๋๋ก ๋ฐ์ ์ฌ ์๊ฐ ์์๋ค. ๋ฐ์ดํฐ๊ฐ ์๊ธฐ ๋๋ฌธ. ..์ด๊ฑธ๋ก ๊ฝค ๊ณจ๋จธ๋ฆฌ๋ฅผ ์ธ๋งค๊ณ ์์๋ค.. ๊ฒฐ๊ตญ ์ฐพ์๋ธ ๋ฐฉ๋ฒ์...โ์ต๊ทผ ์ผ์ฃผ์ผ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ค๊ณ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ฅ ์ต๊ทผ์์๋ก ์ ๋ ฌํ๋ ๊ฒ์ด๋ค. ๊ทธ๋ ๊ฒ ๋๋ฉด ์ค๋๊ณผ ์ ์ผ์ ๋ฐ์ดํฐ๊ฐ ์๋๋ผ๋ ๊ฐ์ฅ ์ต์ ์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ๋น๊ต๋ฅผ ํ ์ ์์๋ค. ๊ทธ๋ฆฌ๊ณ ์ฝ์คํผ๋ ํ์จ๊ฐ์ ๊ฒฝ์ฐ์๋ ์ค์๊ฐ์ผ๋ก ๋ณ๋๋๋ ๊ฐ์ ๋ฐ์์ค๊ธฐ์๋์๋ฒ์..
ํ์๊ฐ์
์ ํ ์ ํ์์ฌํญ์ผ๋ก ์
๋ ฅ๋ฐ์์ผํ๋ ๊ฒ๋ค์ด ๋ง์๋ค. ์ด๊ธฐ์๋ ๊ฝค ๋ง์ ํ
์คํธํ๋๋ค๊ณผ ํผ์ปค๋ทฐ๋ฅผ ์ด๋ป๊ฒ ๋ฐฐ์นํด์ผํ ์ง ๊ณ ๋ฏผ์ด ๋ง์๋ค. ์๋ฅผ๋ค์๋ฉด, (์์ด๋ ๋ผ๋ฒจ + ์์ด๋ ํ
์คํธํ๋ + ์์ด๋ ๋ทฐ)๋ฅผ ์คํ
๋ทฐ๋ก ๊ฐ์ธ๊ณ ๊ฐ ์คํ
๋ทฐ๋ค์ ๋ค์ ๊ฐ๊ฒฉ์ ์กฐ์ ํด์ฃผ๋ ๋ฐฉ์์ ์๊ฐํด๋ณด์์ผ๋ ๊ฝค ๋ง์ ์คํ๋ทฐ๋ค๋ก ์ธํด์ฝ๋๊ฐ ์์ง ์ด๋ฐ์ธ๋ฐ๋ ๊ฝค ๋ณต์กํ๊ฒ ๋๊ปด์ก๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ ๊ฒ ์คํ๋ทฐ์ ์คํ๋ทฐ์ ์คํ๋ทฐ ๊ฐ์ ๋๋์ผ๋ก ๊ฐ๋๊ฒ ๋ง๋๊ฐ์ ๋ํ ์๋ฌธ์ด ๋ค์๋ค. ๊ทธ๋์ ์์์ ์ผ๋ก ์ ํํ ๋ฐฉ๋ฒ์ ํ
์คํธํ๋์ placeholer๋ฅผ ์ฌ์ฉํด์ ํ์ํ๊ณ ๊ฐ๊ฐ์ ํ
์คํธํ๋์ ํผ์ปค๋ทฐ๋ค์ ํ๋์ ์คํ๋ทฐ์ ๋ด๋ ๊ฒ์ด ๊ฐ๋จํด ๋ณด์๋ค. (์ด๋๋ ๋ชฐ๋์ง....) ๊ทธ๋ฆฌ๊ณ ๋์ ์ ์ ์ถ๊ฐ๋๋ ์ฌํญ๋ค์ด ๋ง์์ก๋ค.์๋ฅผ ๋ค์๋ฉด, ํ์์ ๋ง์ง ์๋ ์์ด๋์ ํจ์ค์..