๊ทธ ๋์ ๋ง์ฐํ๊ฒ๋ ํ์
์ด๋
ธํ
์ด์
(๋ช
์)๊ฐ ์ปดํ์ผ ์๋๊ฐ ๋ ๋น ๋ฅด๋ค๊ณ ์๊ฐํ๋์ง๋ผ ์๋ฌด ์๊ฐ ์์ด ํ์
๋ช
์๋ฅผ ํ๋ ์ต๊ด์ ๋ค์ด๊ณ ์์๋ค. ๊ทธ๋ฌ๋ ์ต๊ทผ ๋ฃ๊ณ ์๋ ๊ต์ก ๊ณผ์ ์์ ๋ฉํ ๋๊ป์ ํ์
์ถ๋ก ์ ํ๋ ๊ฒ์ด ๋ ๋์๋ณด์ธ๋ค๋ผ๋ ๋ง์์ ํด์ฃผ์
จ๊ณ , ์์ธ์ง ๊ถ๊ธํ๋์ง๋ผ ์ฌ์ญค๋ณด๊ฒ ๋์๋ค. ๋ต๋ณ ์ฃผ์ ๊ฒ์ผ๋ก๋ ์ปดํ์ผ๋ฌ์ ์ฑ๋ฅ์ด ์ ์ ๋ ๊ฐ์ ๋๊ณ ์๊ณ , ํ์
์ถ๋ก ์ด ์ปดํ์ผ ์๋๊ฐ ๋ ๋น ๋ฅด๋ค๋ ์คํ ๊ฒฐ๊ณผ๋ ์๋ค๊ณ ๋ต๋ณ์ฃผ์
จ๋ค. ์ค์ ๋ก ์๋์ ์ฒจ๋ถํ ๋งํฌ๋ฅผ ๋ณด๋ฉด ๊ฐ๋จํ ์คํ ๊ฒฐ๊ณผ๋ฅผ ํ์ธํด๋ณผ ์ ์๋ค. https://forums.swift.org/t/regarding-swift-type-inference-compile-time-performance/49748/2 let a = "hello, world!" // type..
IOS
๋ค๋น๊ฒ์ด์
๋ฐ/ํญ ๋ฐ bottom/top ๋ผ์ธ ๋ํดํธ๋ก ์ ๊ณต๋๋ ์์ฑ์ ์๋ค. ์ปค์คํ
ํด์ผ ํจ. ํ๋ฉด ๋ถ๊ธฐ ์ฒ๋ฆฌ ๋จ์ํ 2๊ฐ๋ง ๋ถ๊ธฐ๊ฐ ๋๋ ๊ฒฝ์ฐ๋ ๊ฐ ์ ๋ฌ๋ก ๋ถ๊ธฐ ์ฒ๋ฆฌ ๊ฐ๋ฅ. ์ฌ์ฌ์ฉ๋๋ ํ๋ฉด์ด ๋ง์ ์ง๋ค๋ฉด ์ด๊ฑฐํ์ ์ฌ์ฉํด์ ์ข ๋ ์ ์ฐํ๊ฒ ๋์ํ ์ ์์. ๋ค๋น๊ฒ์ด์
ํ์ดํ ์ปค์คํ
ํ๋๋ง ํํด๋ผ. ์ ํ ๊ฐ์ด๋๋ฅผ ์งํค๊ฑฐ๋, ์์ ์๋ก ๋ง๋ค๊ฑฐ๋! ์ ํ์ ์์คํ
ํํ ๊ทธ๋๋ก๋ฅผ ์ฌ์ฉํ๋ค๋ฉด ์ปค์คํ
์ด ์ฌ์ค์ ์ด๋ ค์. ์ปค์คํ
์์ญ์ UIView๋ฅผ ๊ฐ์ง๊ณ ๊ฐ๋ฐ์๊ฐ ์ง์ ๋ค ๋ฐ๊พผ ๊ฒ์ด๋ผ๊ณ ๋ณด์๋ ๋ฌด๋ฐฉ. Navigation Title ๋ถ๋ถ์ UIView๋ก ๋์ฒดํ ์ ์์ titleView ํ๋กํผํฐ ์ด์ฉ ๋ผ๋ฒจ์ inset ๊ฐ๋จํ ๋ฐฉ๋ฒ์ผ๋ก๋ ํ
์คํธ ์ข์ฐ์ ์ฌ๋ฐฑ์ ๋ฃ์ด์ ํด๊ฒฐ ๊ฐ๋ฅ ๊ธ์ ์์ ๋ฒ์๊ฐ ๊ณ ์ ์ ์ด๊ฑฐ๋ ์ผ์ ํ๋ค๋ฉด Co..
App Bundle, ipa .app bundle ์ฑ ๋ฒ๋ค์ ์ด์ฉํ ๋น๋์ ๋ํด์ ์ง์์ ์์๋ค๋ฉด ์ด๋ ์๊น? ์ด์ ์ ๋ค๋ฅธ ์ฌ๋๋ค์ ํ๋ก์ ํธ๋ฅผ ๋ค์ด๋ฐ์์ ์ฌ์ฉ์ฑ ํ
์คํธ๋ฅผ ํด์ผ ํ๋ ์ผ์ด ์์๋๋ฐ ํ๋ก์ ํธ ํจํค์ง ์ธ๋ฑ์ฑ์ ํ๋ ์๊ฐ์ด ๋๋ฌด ์ค๋ ๊ฑธ๋ ค์ ํ
์คํธํ๋ ๋ฐ ๋ฐ๋์ ์ด์ ์๊ฐ์ ์ผ๋ ๊ธฐ์ต์ด ์๋ค. ๋น๋๊ฐ ๋๋ ์ฑ ๋ฒ๋ค์ ๋ฐ์๋ค๋ฉด ์ข์์ํ
๋ฐ.. ๋๋ฌผ์ด ๋๋ค. .ipa iOS ์ ํ๋ฆฌ์ผ์ด์
์์นด์ด๋ธ ํ์ผ ๊ณ์ ์ด ๋ถ์ด ์์. Build ์๋ฎฌ๋ ์ดํฐ(Option) ์ค์ ๊ธฐ๊ธฐ(๊ฐ๋ฐ์ ๊ณ์ ํ์) Debug mode : ๊ฐ๋ฐ์ฉ Release mode : ์ถ์ Xcode ๋จ์ถํค ๋จ์ถํค๋ ์๊ฐ๋ ๋ ์ ๋ฆฌํด์ ๋์์์ผ์ง option + cmd + [ , ] : ์ฝ๋ ๋ธ๋ญ ์ด๋ shift + control + ํด๋ฆญ : ๋ค..
ํ๋ฉด ์ ํ์์ ํท๊ฐ๋ฆด๋งํ ์ง์ ๋ค๋น๊ฒ์ด์
์คํ ๊ด๋ฆฌ (์ฝ๋๋ก ํ๋ฉด ์ ํ์ ๊ตฌํํ ๋ ๋์น๊ธฐ ์ฝ๋ค.) ๋ค๋น๊ฒ์ด์
์คํ์ผ๋ก ๊ด๋ฆฌ๋๋ค๊ฐ ์ค๊ฐ์ Present๋ ๋ชจ๋ฌ์ด ๋์ค๋ฉด ์คํ์ด ๋๊ธฐ๊ฒ ๋๋ค. ์ค๊ฐ์ ์๋กญ๊ฒ ๋ค๋น๊ฒ์ด์
์ปจํธ๋กค๋ฌ๋ฅผ embedํด์ ์ ํ์ ์ด์ด๋๊ฐ ์ ์๊ณ , ์ด ์์ ๋ถํฐ๋ ์๋ก์ด ๋ค๋น๊ฒ์ด์
์คํ์ด ์๊ธฐ๊ฒ ๋๋ค. ์์์ ์ ์ค์์ฑ (ํญ๋ฐ ์ปจํธ๋กค๋ฌ, ๋ค๋น๊ฒ์ด์
์ปจํธ๋กค๋ฌ) ์คํ ๋ฆฌ๋ณด๋์ ๋ค๋น๊ฒ์ด์
์ปจํธ๋กค๋ฌ๋ฅผ embed ํด๋๋๋ผ๋ ์ธ์คํด์ค๋ฅผ ๊ฐ์ ธ์ฌ ๋ ์ฃผ์ํ์ง ์์ผ๋ฉด ์ํ๋ ๊ตฌํ์ ํ ์ ์๋ค. ํ๋ฉด ์ ํํ๋ฉด์ ๊ฐ ์ ๋ฌ ์ ๋ฌ ๋ฐ์ ํ๋ฉด์ ๊ณต๊ฐ ๋ง๋ค๊ธฐ ๋ฐ์ดํฐ ์ ๋ฌํ๊ธฐ ๋ฐ์ ๋ฐ์ดํฐ ๊ฐ์ง๊ณ ๋ทฐ์ ํํํ๊ธฐ ํ๋ฉด ์ ๋ฌ ์ ์ ์ ํ๊ฒ ๋ณ์์ ๊ฐ์ ๋ด์๋ณด๋ด๊ธฐ ์ํด์๋ ๋ค์ด ์บ์คํ
์ด ํ์ํ๋ค. (์ฐ๋ฆฌ๊ฐ ViewControl..
์ต์
๋ ๋ฐ์ธ๋ฉ (Optional Binding) ์ต์
๋ ๋ฐ์ธ๋ฉ ์ฒ๋ฆฌ๋ ์์์ ๋ฒ์๊ฐ ๋ค๋ฆ if ~ let guard ~ let ์ธ์คํด์ค ํ๋กํผํฐ vs ํ์
ํ๋กํผํฐ UIKit ์์๋ ๋ชจ๋ ํด๋์ค์ด๋ค. ์ธ์คํด์ค ํ๋กํผํฐ ์ธ์คํด์ค๊ฐ ์์ฑ๋ ๋ค, ๋ด๋ถ์ ์๋ ๋ฉค๋ฒ๋ก์ ํ๋กํผํฐ์ ์ ๊ทผํ ์ ์๋ค. ํ์
ํ๋กํผํฐ static ํค์๋๊ฐ ๋ถ์ ํ๋กํผํฐ๋ ์ธ์คํด์ค ์์ฒด์์ ์ ๊ทผํ ์ ์๋ค. ๋ณ์์ ์ข
๋ฅ ์ ์ฅ, ์ฐ์ฐ, ๊ฐ์์ ํ๋กํผํฐ ์ด๊ธฐํ, ํด์ ํ๋ฉด์ด push ๋ ๋ init(์ด๊ธฐํ) ๋จ. ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ๊ฐ. ํ๋ฉด์ด pop ๋ ๋ deinit ๋จ. ๋ฉ๋ชจ๋ฆฌ์์ ๋ด๋ ค๊ฐ. ๋ฌธ์์ด ๊ด๋ฆฌ ํด๋จผ์๋ฌ ๊ด๋ฆฌ ์ด๊ฑฐํ ์ด๊ฑฐํ์ ์ด๊ธฐํ ๋ถ๊ฐ ์ธ์คํด์ค ์์ ๊ทธ๋ ๊ธฐ์ ๊ตฌ์กฐ์ฒด, ํด๋์ค๋ฅผ ์ฌ์ฉํ๋ ์ํฉ๊ณผ ๊ตฌ๋ถ ํ์ ์ปดํ์ผ ์์ ์ ์๋ฌ ํ์ง ๊ฐ๋ฅ..
TableViewCell ๋ฐ์ดํฐ ์ค์ Cell์ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์ด์ค์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. ๊ฐ๋จํ๊ฒ ์๊ฐ์ ํด๋ณด๋ฉด CellForRowAt ๋ฉ์๋ ๋จ๊ณ์์ Cell์ ํ๋กํผํฐ์ ์ ๊ทผํ์ฌ ๋ฐ์ดํฐ๋ฅผ ํ๋์ฉ ๋ฃ์ด์ค ์ ์์ ๊ฒ์ด๋ค. ๊ทธ๋ฐ๋ฐ ๋ฃ์ด์ค์ผ ํ๋ ๋ฐ์ดํฐ๊ฐ ์ฌ๋ฌ ๊ฐ์ธ ๊ฒฝ์ฐ ํ๋์ฉ ๋ค ๋ฃ์ด์ฃผ๊ธฐ๊ฐ ์ ๋ง ๋ฒ๊ฑฐ๋กญ๊ณ ๋นํจ์จ์ ์ธ ์์
์ด ๋ ๊ฒ์ด๋ค. ์ด ์์
์ Cell์๊ฒ ๋์ ๋ถ์ฌํด์ ๋ฐ์ดํฐ๋ง ํต์งธ๋ก ๋๊ฒจ์ฃผ๋ฉด Cell์ด ์์์ UI ์์์ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์ด์ฃผ๋๋ก ํ๋ฉด ๊น๋ํด์ง ๊ฒ์ด๋ค. ๋ฐ์ดํฐ ์ญ์ ์ธ์๋ก ํ๋์ฉ ๋๊ฒจ์ค ์ ์๊ฒ ์ง๋ง ๊ทธ ์๊ฐ ๋ง๋ค๋ฉด ํ๋ค ๊ฒ์ด๋ค. ๊ทธ๋์ ๊ตฌ์กฐ์ฒด ํํ๋ก ์ฌ๋ฌ ํ์
์ ๋ฐ์ดํฐ๋ฅผ ํ ๋ฌถ์์ผ๋ก ์๊ฐํด์ ๋ฐ์ดํฐ๋ฅผ ๋๊ฒจ์ฃผ๋ฉด ํธํ ๊ฒ์ด๋ค. // Model Struct struct Movie { var titl..
1. ์์๋ ์ปฌ๋ ์
(Outlet Collection)์ ์ธ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์๊น์ ๋ํ ๊ณ ๋ฏผ ๋จ์ ์์ ๋ฐ๋ณต ๋๋ ๋์ผํ UI ๊ตฌ์ฑ, ๋์์ธ์ ์์๋ฅผ ๋ค๋ฃฐ ๋ ์ ํฉํ๋ค๊ณ ๋ณผ ์ ์๋ค. ๋ฌผ๋ก ์ธ๋ฑ์ค๋ฅผ ํ์ฉํด์ ๋ฐ์ดํฐ์ ์ ๊ทผํ๊ฑฐ๋ ๋ณ๊ฒฝํ๋ ๊ฒ๋ ๊ฐ๋ฅํ์ง๋ง ์ดํ์ UI ๊ตฌ์กฐ๊ฐ ๋ณ๊ฒฝ๋๊ฑฐ๋ ์ฝ๋๋ฅผ ๋ค์ ํ์ธํ๊ณ ์ ํ ๋ ์ด๋ ค์์ด ์๊ธธ ์ ์๋ค. ๋์์ธ์ ์ธ ๋ถ๋ถ๊ณผ ๋ฐ์ดํฐ์ ์ธ ๋ถ๋ถ์ ๋ถ๋ฆฌ๊ฐ ๋ ์ ์ ํ ์ ์๋ค. 2. ๊ฐ์ฒด์ ์ ์ธ ์์น (feat. DateFormatter) ํจ์ ๋ด๋ถ ํด๋์ค ๋ด๋ถ ํ์ผ ์ ์ฒด 3. TableView Contents Static cell : ํ์์ด ํญ์ ๋์ผํจ Dynamic type : ๋ฐ์ดํฐ์ ๋ฐ๋ผ ์ปจํ
์ธ ๊ฐ ๋ฌ๋ผ์ง, ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ํด๋น ๋ฐฉ์์ ์ฌ์ฉ View Header View Foo..
1. ํ๋ฉด ์ ํ 1) ํ๋ฉด ์ ํ์ ํ์์ฑ 2) ํ๋ฉด ์ ํ ์ ๊ณ ๋ ค ์ฌํญ ๋ค๋น๊ฒ์ด์
์ปจํ
์ธ ์ ํ ๋ฐฉ์ (์์ธ ์ ๋ณด, ๊ธฐ์กด๊ณผ ๋ค๋ฅธ ์ ๋ณด) ์ ํ ํจ๊ณผ (ํ์ด์ง ์ ํ ํจ๊ณผ, ํ์
๋ฑ) 3) ๊ฐ๋ฐ๋ฐฉ๋ฒ (๊ตฌํ์ ์ด๋ค ์ฐจ์ด๊ฐ ์์๊น) ์ธํฐํ์ด์ค ๋น๋ (๋ฐฉํฅ ์ง์ ๊ฐ๋ฅ, ์ฝ๋ ํ์ ์์, ๊ตฌํ ์ฌ์, ์ธ๋ถ์ ๋์ ๋ถ๊ฐ๋ฅ) ์ฝ๋ (๋ฐฉํฅ ์ง์ ์ด๋ ค์, ์ฝ๋ ํ์, ์ปจํ
์ธ ํํ ์ฉ์ด, ์ธ๋ถ์ ๋์ ๊ฐ๋ฅ) ์ฝ๋๋ก ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ๋ ๋ง์ด ์ฌ์ฉํ๋ ํธ์ด๋ค. 4) Show vs Modal showmodal push present pop dismiss 5) ์คํ ๋ฆฌ๋ณด๋ : Segue - Unwind 6) Modal Presentation Style full screen over full screen (full screen) over..