Notifications ๊ธฐ๋ณธ์ ์ผ๋ก ์๋ฆผ์ ๋ํ ํ์ฉ ๊ถํ์ด ํ์ํจ. Local Notifications ๋๋ฐ์ด์ค๋ด์ ์ ์ฅ๋์ด ์๋ ์๋ฆผ์ ๋ฐ๋ ๋ฐฉ์ ๊ฐ์ธ์ด ํผ์ ๊ด๋ฆฌํ๋ ์ฑ Xcode ๋ด์ ๋ฐ์ดํฐ, ์ ๋ณด๋ฅผ ์ ์ฅํด๋๊ณ ์๋ฆผ์ ๋ณด๋ Push Notifications ์๋ฒ์์ ์๋ฆผ์ ๋ฐ์ ์ด๋ค ์๊ฐ์ ์ด๋ค ๋ด์ฉ์ด ์ฌ์ง ๋ชจ๋ฅด๋ ์ํ ๊ถํ ํ์ฉํ ๊ฒฝ์ฐ iOS ์๋ฆผ ์ผํฐ์ ํ์ ์ฑ ์ฌ์ฌ์ฉ๋ฅ (Retention)์ ๊ธฐ์ฌ ์ฑ์ด ์ข
๋ฃ๋ ๊ฒฝ์ฐ์๋ ์ฌ์ฉ์์๊ฒ ์๋ก์ด ์ ๋ณด๋ฅผ ํ์ Local vs Remote Local Xcode ๋ด์ ๋ฌธ๊ตฌ๊ฐ ๋ฏธ๋ฆฌ ์ ์ฅ๋์ด ์๋ ์ํ ์ฑ ๋ด์์ ์ปจํ
์ธ ๋ฅผ ๊ฐ์ง๊ณ ์๊ณ , ์ปจํ
์ธ ๊ฐ ๊ณ ์ ๋์ด ์๋ ์ํ Remote ์๊ฐ๊ณผ ์ปจํ
์ธ ๋ชจ๋ ๋ค์ด๋๋ฏนํ ์ํ ๊ถํ -> ์์ฒญ -> ์๋ฆผ ๊ถํ (Alert, Ba..
์ ์ฒด ๊ธ
๐ฑiOS ๊ฐ๋ฐ์๋ฅผ ๊ฟ๊พธ๋ ํ์์ด ๋ง๋๋ ๋ธ๋ก๊ทธ
๋ค์ด๊ฐ๋ฉฐ ์๋
ํ์ธ์, ํ๋ผ์
๋๋ค :) ์ ๋ง ์ค๋๋ง์ ๊ธ์ ์๋๋ค..๐ ์์ ๋ฒ์์์ด ์ฌ ๊ฒ๋ง ๊ฐ์์ ์์ฌ์์ฌ ํ๋ฃจ๋ฅผ ๋ณด๋ด๊ณ ์์ง๋ง ๋ค์๊ธ ๋ง์์ ๋ค์ก๊ณ ์ด์ฌํ ํด๋ณด๊ณ ์ ํฉ๋๋ค. ๊ธ ์ฐ๋ ๊ฒ์ ์๊ฐ๋ณด๋ค ๋๋ฌด ๋ฏธ๋ค๋๊ณ ์์๋๋ฐ, ์๋ฒฝ์ ์ถ๊ตฌํ๊ธฐ ๋ณด๋ค๋ ์ผ๋จ ์ค์ฒ์ ํ๋ ๊ฒ์ ์ต๊ด์ ๋ค์ด๋๋ก ๋
ธ๋ ฅํด๋ณด๊ฒ ์ต๋๋ค. ์ค๋ ๊ฐ๋จํ๊ฒ ์๊ฐํ ๋ด์ฉ์์. ์ ๊ฐ ๋ ์ง ํ์์ ๊ด๋ จํด์ ์ฌ์ฉํ๋ ์ฝ๋ ์กฐ๊ฐ์ด๋ผ๊ณ ํ๋ฉด ๋ ๊น์. ๋ฃ๊ณ ์๋ ์์
์์๋ ๋ ์ง๋ฅผ ๋ค๋ค๋ณผ ์ผ์ด ์์๊ณ , ์งํ ์ค์ธ ํ๋ก์ ํธ ๋ด์์๋ ์ ๊ฐ ์บ๋ฆฐ๋๋ฅผ ๋งก๊ณ ์์ด์ ๋ ์ง๋ฅผ ๋ค๋ฃฐ ์ผ์ด ๋ง์๋ฐ์. ์๊ฐ๋ณด๋ค ๋ ์ง ํ์์ ๊ด๋ฆฌํ๊ธฐ ๋๋ฌด ๊ท์ฐฎ์ต๋๋ค. ๊ทธ๋์ ์ด๊ฑฐํ์ ์ด์ฉํด์ ์ข ๋ ๊น๋ํ๊ฒ DateFormat์ ๊ด๋ฆฌํด๋ณด๋๋ก ํด์. ์ฐ๋ฆฌ๊ฐ ๊ทธ๋์ ๋ ์ง๋ฅผ ๋ค๋ฃจ๋ฉด์ ํ๋ ํ๋์ ..
์์
๋ฃ๊ณ ์์ดํจ๋์๋ ์๊ฐ์ด๋ ๋ด์ฉ๋ค ๋ค ๊ธฐ๋กํด๋๋๋ฐ, ์ด๊ฑธ ์ปดํจํฐ๋ก ์ฎ๊ธฐ๋ ๊ฒ ์ ์ด๋ฆฌ ํ๋ ๊ฑด์ง.. ๊ทธ๋ ๋ค๊ณ ๋ฐ๋ก ์ปดํจํฐ์ ์ ์๋ ์ด์ํ๊ณ .. ์ข ๋ ๋
ธ๋ ฅํด๋ด์ผ๊ฒ ์ด์.. ๋ฐ๋ฆฐ TIL ์
๋ก๋ ํด๋ณผ๊ฒ์! ใ
ใ
Protocol(ํ๋กํ ์ฝ) ํ๋กํ ์ฝ์ ๊ท์น์ด๋ค. ์ค์ง์ ์ธ ๊ตฌํ์ ๋ด๋นํ์ง๋ ์๋๋ค. ๊ตฌํ์ ํ๋กํ ์ฝ์ ์ฑํํ ์ชฝ์์ ๋ด๋นํ๋ค. ๊ฐ์ฅ ํฐ ์ฅ์ ์ค ํ๋๊ฐ ํํ๋ฅผ ๊ฐ์ ํ ์ ์๋ค๋ ๋ถ๋ถ์ด๋ค. ํ์ผ๋ง๋ค ์์ฑํด์ผ ํ๋ ๋ฉ์๋ ๋ช
์ด๋ ํ๋กํผํฐ ๋ช
๋๋ ๊ตฌํ๋์ด์ผ ํ๋ ๋ถ๋ถ์ ๋ํ ๊ฐ์ ๋ฅผ ํ ์ ์๋ค๋ ๊ฒ์ด๋ค. ์ผ๊ด์ ์ธ ํํ๋ฅผ ์ ์งํ ๋ ์ ์ฉํ๋ค. ํ๋กํ ์ฝ๊ณผ ๋ถ๋ชจ ํด๋์ค์ ๊ฐ์ฅ ํฐ ์ฐจ์ด๋ผ๊ณ ํ๋ค๋ฉด ํด๋์ค๋ ๋จ์ผ ์์๋ง ๊ฐ๋ฅํ ๋ฐ๋ฉด์, ํ๋กํ ์ฝ์ ๋ค์ค ์ฑํ์ด ๊ฐ๋ฅํ๋ค๋ ์ ์ด๋ค. ๋ค์ ๊ธ Taehyeon-Kim..
๋ทฐ์ ๋ฐ์ดํฐ ๊ด๋ จํ ๊ฒ์ ๋ถ๋ฆฌํ๋๋ก ํ์. ์ญํ ์ ๋ถ๋ฆฌํด์ ํจ์๋ฅผ ์์ฑํ์. UIViewController + UITableView UITableViewController๋ง ์ฌ์ฉํ ์ ์์ผ๋ฉด ์ผ๋ง๋ ํธํ ๊น? ๊ทธ๋ฌ๋ UITableViewController๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์๋ ์ข ๋ ์ ์ฐํ ํ๋ฉด ๊ตฌ์ฑ์ด ์ด๋ ต๋ค. ์ด๋ฏธ ํ๋ฉด ์ ์ฒด๊ฐ ํ
์ด๋ธ๋ทฐ๋ก ๊ฐ๋ ์ฐจ ์์ด ์์ญ์ ํฌ๊ธฐ ์กฐ์ ์ด ์ด๋ ต๊ธฐ ๋๋ฌธ์ด๋ค. (์ด ๋ง์ธ ์ฆ์จ RootView๊ฐ UITableView๋ผ๋ ๊ฒ์ด๋ค.) ๊ทธ๋ ๊ธฐ์ TableView๋ง ๋ฐ๋ก ์ฌ๋ ค์ ํ๋ฉด์ ๊ตฌ์ฑํ๋ ๊ฒฝ์ฐ๊ฐ ๋ ๋ง๋ค. TableView ์์ฑ + ์์๋ ์ฐ๊ฒฐ TableViewCell ์์ฑ (ํ๋กํ ํ์
์
, XIB ์ด์ฉ) + ์
ํด๋์ค ์ฐ๊ฒฐ + ์์๋ ์ฐ๊ฒฐ TableView์ ํ์ํ ํ๋กํ ์ฝ ์ ์ธ..
๊ทธ ๋์ ๋ง์ฐํ๊ฒ๋ ํ์
์ด๋
ธํ
์ด์
(๋ช
์)๊ฐ ์ปดํ์ผ ์๋๊ฐ ๋ ๋น ๋ฅด๋ค๊ณ ์๊ฐํ๋์ง๋ผ ์๋ฌด ์๊ฐ ์์ด ํ์
๋ช
์๋ฅผ ํ๋ ์ต๊ด์ ๋ค์ด๊ณ ์์๋ค. ๊ทธ๋ฌ๋ ์ต๊ทผ ๋ฃ๊ณ ์๋ ๊ต์ก ๊ณผ์ ์์ ๋ฉํ ๋๊ป์ ํ์
์ถ๋ก ์ ํ๋ ๊ฒ์ด ๋ ๋์๋ณด์ธ๋ค๋ผ๋ ๋ง์์ ํด์ฃผ์
จ๊ณ , ์์ธ์ง ๊ถ๊ธํ๋์ง๋ผ ์ฌ์ญค๋ณด๊ฒ ๋์๋ค. ๋ต๋ณ ์ฃผ์ ๊ฒ์ผ๋ก๋ ์ปดํ์ผ๋ฌ์ ์ฑ๋ฅ์ด ์ ์ ๋ ๊ฐ์ ๋๊ณ ์๊ณ , ํ์
์ถ๋ก ์ด ์ปดํ์ผ ์๋๊ฐ ๋ ๋น ๋ฅด๋ค๋ ์คํ ๊ฒฐ๊ณผ๋ ์๋ค๊ณ ๋ต๋ณ์ฃผ์
จ๋ค. ์ค์ ๋ก ์๋์ ์ฒจ๋ถํ ๋งํฌ๋ฅผ ๋ณด๋ฉด ๊ฐ๋จํ ์คํ ๊ฒฐ๊ณผ๋ฅผ ํ์ธํด๋ณผ ์ ์๋ค. https://forums.swift.org/t/regarding-swift-type-inference-compile-time-performance/49748/2 let a = "hello, world!" // type..

iOS 15์์๋ Sheet์ ์ฌ๋ฌ ์ปค์คํ
์ต์
์ ์ถ๊ฐํ ์ ์์ต๋๋ค. ex. ํ๋ฉด์ ์ ๋ฐ ํฌ๊ธฐ๋ก ์ํธ๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค. ex. Dimmed View๋ฅผ ์ ๊ฑฐํ ์ ์์ต๋๋ค. ex. ์ํธ ์๊ณผ ์ํธ ๋ค์์ ๋์์ ์ฝํ
์ธ ์ ์ํธ ์์ฉํ ์ ์๋๋ก ์ฑ์์ ๋น๋ชจ๋ฌ ํ๊ฒฝ์ ๊ตฌ์ถํ ์ ์์ต๋๋ค. 1. Getting a sheet Sheet ์ธ์คํด์ค๋ฅผ ์์ฑํฉ๋๋ค. UIPresentationController์ ์๋ธ ํด๋์ค์ธ UISheetPresentationController๋ฅผ ์ด์ฉํฉ๋๋ค. ์ํธ๋ก ๋์ฐ๊ณ ์ถ์ ์ธ์คํด์ค์ sheetPresentationController๋ฅผ ํธ์ถํฉ๋๋ค. let viewControllerToPresent = UIViewController() if let sheet = viewContr..
๋ค๋น๊ฒ์ด์
๋ฐ/ํญ ๋ฐ 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 + ํด๋ฆญ : ๋ค..