Bundle Identifier ๋ฒ๋ค ์์ด๋(Bundle Identifier)๋ ์ฑ์ ๊ตฌ๋ถํ๋ ๊ณ ์ ํ ์๋ณ์๋ฅผ ์๋ฏธํ๋ค. ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ์ ๊ฐ์ ์ฑ๊ฒฉ์ ๋ค๋ค๊ณ ๋ณผ ์ ์๋ค. ๊ณ ์ ํด์ผํ๋๊น ์ค๋ณต๋์ด์๋ ์ ๋๊ณ ์ค์ ๋ก ์ถ์ ์ ์ ์ค๋ณต ์ฌ๋ถ๋ฅผ ๊ฒ์ฌํ๊ฒ ๋๋ค. โ
์ค๋ณต๋ Bundle Identifier๋ฅผ ์ฌ์ฉํ๋ค๋ฉด ์๋ฌ๊ฐ ๋จ๊ณ ๋น๋๊ฐ ๋์ง ์๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํ๋ค. ์ถ์๊ฐ ๋ถ๊ฐ๋ฅํ๋ค. ๊ฐ๋ ๊ฐ๋ฐ์ ํ๋ค ๋ณด๋ฉด ์ค๋ณต๋ Bundle Identifier๋ฅผ ์ฌ์ฉํ๋ค๊ฐ ๋น๋๊ฐ ๋์ง ์์ ๊ฒฝ์ฐ๋ฅผ ๋ง๋๊ณ ๋ ํ๋ค. ํ์น๋ ์์ ์ผ์ด์ง๋ง ๋ฌธ์ ๊ฐ ์๊ธด๋ค๋ฉด ์ ์ ํ๊ฒ Id๋ฅผ ๋ณ๊ฒฝํ๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค. (์ค์ ๋ก SOPT ํ๋ ์ ์ธ๋ฏธ๋๋ฅผ ์งํํ๋ฉด์ Bundle Identifier๋ฅผ com.sopt.Project์ ๊ฐ์ด ์ฌ์ฉํ ์ ์ด ์๋๋ฐ, ์ด..
๐ iOS & Swift
๐ชด์ผ๋ฐ์ ์ธ ๋ฐฉ๋ฒ ๊ตฌ๊ธ๋ง์ ํ๋ค๋ณด๋ฉด ์ผ๋ฐ์ ์ผ๋ก ์๊ฐ๋๋ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ๋ค. layer๋ฅผ ๋ฅ๊ธ๊ฒ ๋ง๋ค์ด์ฃผ์ง ์์ผ๋ฉด ๋ค๋ชจ ๋ชจ์์ผ๋ก ์น ํด์ง๊ธฐ ๋๋ฌธ์ ๋ฅ๊ธ๊ฒ ๊น์์ค์ผ ํ๋ค. switch.backgroundColor = .blue switch.layer.cornerRadius = switch.bounds.size.height / 2 (๋๋ 16) ๐ชดํ์ ๋ทฐ์ ์ ๊ทผํ๋ ๋ฐฉ๋ฒ ์ backgroundColor๋ฅผ ๋ณ๊ฒฝ์ํค๋ฉด ๋ค๋ชจ ๋ชจ์์ผ๋ก ์น ํด์ง๊น์ ๋ํด์ ์๊ฐํด๋ณด๋ค๊ฐ UISwitch์ ๊ตฌ์กฐ๋ฅผ ์ดํด๋ณด๊ณ ์ถ์ด์ ๊ณ์ธต ๊ตฌ์กฐ๋ฅผ ๋ฏ์ด๋ดค๋ค. ๋ณด๋๊น ๊ธฐ๋ณธ์ ์ผ๋ก ์์ด ๋ค์ด๊ฐ ์๋ ๋ทฐ๋ backgroundColor๊ฐ ์ ์ฉ๋๋ ๋ทฐ๋ ๊ณ์ธต์ด ๋ค๋ฅธ ๊ฒ ๊ฐ์๋ค. ๋ ๋ฒ์งธ ์ด๋ฏธ์ง๊ฐ UISwitch์ backgroundColor๋ง ๋ณ๊ฒฝ์์ผฐ์ ๋์..
What's new in SF Symbols 4 Explore the latest updates to SF Symbols, Apple's extensive library of iconography designed to integrate seamlessly with San Francisco, the system font for all Apple platforms. Discover the latest additions to the SF Symbols library and new categories in the app. Learn about the new Automatic behavior, which chooses the rendering mode that best highlights what's unique..
๋ค์ด๊ฐ๋ฉฐ โ๏ธ ๊ธฐ์ด ๋ฌธ๋ฒ ๊ณต๋ถ์ ํ์์ฑ์ ๋๊ปด์ ์ด์ฌ์ผ๋ก ๋์๊ฐ ์กฐ๊ธ์ฉ ๊ณต๋ถํ๋ ค๊ณ ํ๋ค. ์ง๊ธ ๊ณต๋ถํ๊ณ ์ ํ๋ ๊ฒ๋ค์ด ๋จ์ ์ ๋ฆฌ๊ฐ ๋์ง ์๋๋ก ๊ณ์ ๊ณ ๋ฏผํ๊ณ ์ฐ๊ตฌํ๋ ์์ธ๋ฅผ ๊ฐ์ง๋๋ก ํ์. ๊ธฐ์ด๋ ๊ฐ์ฅ ์ฌ์์๊ฐ ์๋๋ผ ๊ฐ์ฅ ์ค์ํด์ ๊ทธ ์๋ฏธ๊ฐ ์์์ ๊นจ๋ซ์. if๋ฌธ ๐๐ปโ๏ธ ํน์ ์กฐ๊ฑด์์๋ง ์ฝ๋๋ฅผ ์คํํด์ผ ํ๊ฑฐ๋ ๋๋ ์คํํ์ง ๋ง์์ผ ํ๊ฑฐ๋ ํ๋ ์ํฉ์์ ์ฐ์ธ๋ค. ๋ง ๊ทธ๋๋ก ์กฐ๊ฑด์ ๋ฐ๋ผ ๋ค๋ฅธ ์ฒ๋ฆฌ๋ฅผ ํด์ฃผ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ค. ํ๋์ ํ๋ก๊ทธ๋จ์ ๋ง๋ค๋ค ๋ณด๋ฉด ์ ๋ง ํ์์ ์ผ๋ก ์กฐ๊ฑด๋ฌธ์ ์ฌ์ฉํด์ ์กฐ๊ฑด์ ๋ฐ๋ฅธ ์ฒ๋ฆฌ๋ฅผ ํด์ฃผ๋ ์ํฉ์ด ๋ฐ์ํ๊ธฐ ๋๋ฌธ์ ํ์์ ์ผ๋ก ์๊ณ ์์ด์ผ ํ๋ ๋ด์ฉ์ด๋ค. ์ค์ํ ๊ฑด if๋ฌธ์ ์ฌ์ฉํ ์ ์๋ ์ํฉ์์ switch-case๋ฌธ์ ์ฌ์ฉํ ์ ์๋ค๋ ๊ฒ์ธ๋ฐ ์ด๋ป๊ฒ ์ฝ๋๋ฅผ ์์ฑํด์ผ ํ ์ง๋ ์ ..
๐ฅ ์ธ์ฌ๋ง ์๋
ํ์ธ์, ํ๋ผ์
๋๋ค ใฐ ๐ ๋ค์ ์นดํ
๊ณ ๋ฆฌ์์๋ ๋ชจ๋ฅด๋ ๊ฐ๋
์ด๋ ํค์๋, ๋ฌธ๋ฒ ๋ฑ ๋ค์ํ ๋ด์ฉ์ ์ ๋ฆฌํฉ๋๋ค. ๋ค์ ๋ด์ฉ์ ์ ์ ์ธ์คํ ๊ฐ๋ฐ ๋ก๊ทธ ๊ณ์ (@taekki.dev)์๋ ์ฌ๋ผ๊ฐ๋ ๋ง์ ๊ด์ฌ ๋ถํ๋๋ ค์ :) ๊ฐ๋
์ ๋น๊ณต๊ฐ์ ๋ฉ๊ฟ ์ ์๋ ๊ทธ๋ ๊น์ง ํ์ดํ
ํด๋ณด๊ฒ ์ต๋๋ค. ๊ทธ๋ผ ์ค๋ ํฌ์คํ
์์ํด๋ณด๊ฒ ์ต๋๋ค. ๐ ๐ฌ ๋ค์ด๊ฐ๋ฉฐ UIWindow๋ฅผ ์ฒ์ ๋ง์ฃผํ๊ฑฐ๋, ๊ฐ์ฅ ๋ง์ด ๋ณด๋ ๊ณณ์ด ์ด์ฉ๋ฉด SceneDelegate.swift ๋ AppDelegate.swift ์ผ์ง๋ ๋ชจ๋ฆ
๋๋ค. ํญ์ ๊ฐ๋ณ๊ฒ ์ง๋์น๊ธฐ๋ง ํ๋ UIWindow๊ฐ ๋ฌด์์ธ์ง ์ด๋ฒ์ ์์๋ณด๊ธฐ๋ก ํ์ต๋๋ค. ์ด๋ฒ ๊ธ์ Apple ๊ณต์๋ฌธ์์ ๊ตฌ์กฐ๋ฅผ ๋ฐํ์ผ๋ก ๊ตฌ์ฑํ์ต๋๋ค. ๐ฑ UIWindow์ ํ์
๐ ํ์
(Type) - ํด๋์ค ํ์
์ ํด๋์ค(Cl..
๐ญ ๋ค์ด๊ฐ๋ฉฐ ๋ชจ๋ UI ์์์ ํฌ๊ธฐ๊ฐ ๋์ผํ๋ฉด ์ผ๋ง๋ ์ข์๊น์? ํ์ง๋ง ๊ทธ๋ ์ง ์๊ธฐ ๋๋ฌธ์ ์ฐ๋ฆฌ๋ ๋ฐฉ๋ฒ์ ์ฐพ๊ฒ ๋์ฃ ๐ฅฒ ํนํ๋ ์ปจํ
์ธ ์ ์ฌ์ด์ฆ์ ๋ฐ๋ผ์ UI ์ปดํฌ๋ํธ์ ์ฌ์ด์ฆ๋ฅผ ๋์ ์ผ๋ก ์กฐ์ ํด์ฃผ๋ ์ํฉ์ ๊ฝค๋ ์์ฃผ ๋ฑ์ฅํฉ๋๋ค. ๊ทธ ์ค์์๋ CollectionView๋ ๋จ๊ณจ ์๋์
๋๋ค. CollectionView ์์ฒด์ ๋์ด๋ฅผ ๋์ ์ผ๋ก ์กฐ์ ํ๋ ์ํฉ์ด๋, CollectionView Cell์ ๋๋น๋ ๋์ด๋ฅผ ์กฐ์ ํ๋ ์ํฉ์ ์๋ก ๋ค ์ ์๊ฒ ๋ค์! โจ ์ค๋์ CollectionView Cell์ ๋๋น๋ฅผ ๋์ ์ผ๋ก ์กฐ์ ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค ใฐ ๐บ ์๊ตฌ์ฌํญ ์ฐ๋ฆฌ๊ฐ ๊ตฌํํด์ผํ ์ํฉ์ ๋ค์๊ณผ ๊ฐ์์. ๋นจ๊ฐ์ ๋ฐ์ค ์์ญ์ ๊ตฌํํด์ผ ํ๋๋ฐ ๊ฐ ์นดํ
๊ณ ๋ฆฌ ์์ญ์ด ํ
์คํธ ๊ธธ์ด์ ๋ง๊ฒ ๋์ ์ผ๋ก ์กฐ์ ๋์ด์ผ ํฉ๋๋ค. ์ค..
๐ฅ ์๋ก์ด ์์ ์๋
ํ์ธ์, ํ๋ผ์
๋๋ค ใฐ ๐ ๋ธ๋ก๊ทธ์ ์๋ก์ด ์นดํ
๊ณ ๋ฆฌ๊ฐ ์๊ฒผ์ต๋๋ค ใฐ (์ผํธ) ๋ญ๋๊ตฌ์? ๋ฐ๋ก 'โจ iOS๋ฅผ ์ํ ๊ฐ๋
์์' ์นดํ
๊ณ ๋ฆฌ์ธ๋ฐ์ ใฐ ๊ณต๋ถ๋ฅผ ํ๋ค๋ณด๋ฉด ๊ฐ๋์ฉ(๋งจ๋ ) ๋ชจ๋ฅด๋ ๊ฐ๋
์ด๋ ํค์๋, ๋ฌธ๋ฒ ๋ฑ์ด ๋์ค๋๋ฐ ๊ทธ๋ฐ ๋ด์ฉ๋ค์ ์ ๋ฆฌํ๋ ค๊ณ ํ๋ ค๊ณ ํฉ๋๋ค. ๋ค์ ๋ด์ฉ์ ์ ์ ์ธ์คํ ๊ฐ๋ฐ ๋ก๊ทธ ๊ณ์ (@taekki.dev)์๋ ์ฌ๋ผ๊ฐ๋ ๋ง์ ๊ด์ฌ ๋ถํ๋๋ ค์ :) ์ด๊ฑด TMI์ธ๋ฐ ์ซ์ ์ธ๋ฑ์ฑ์ด ์ธ ์๋ฆฌ์์ฃ !? ์ธ ์๋ฆฌ์๊น์ง ํฌ์คํ
ํ ๊ทธ ๋ ์ ์ํจ์ด๋ผ๋... ๋ญ ๊ทธ ๋ ์ฏค ๋๋ฉด ์ค๋ ฅ์ด ์กฐ๊ธ์ ๋์ด์๊ฒ ๋ค์(ํํ) ๊ทธ๋ผ ์ค๋ ํฌ์คํ
์์ํด๋ณด๊ฒ ์ต๋๋ค ๐ ๐ฌ ๋ค์ด๊ฐ๋ฉฐ typealias์ ๋ํด ๊ณต๋ถํ๋ ์ค์ ‘์๋ธํด๋์ฑ์์ด ์ปค์คํ
ํ์
์ ๋ฐฐ์ด์ ์ ์ํ๋๋ฐ ์ ์ฉํ๋ค’ ์๋ฐ ์ด์ผ๊ธฐ๊ฐ ๋์์ ์๋ธํด๋์ฑ..
๐์ค๋์ ๊ฐ๋จํ๊ฒ Delegate Pattern์ ์ ์ฉํด๋ณด๋ ์์ ์ค์์ ํ๋ฉด ์ ํ ์ ๋ฐ์ดํฐ๋ฅผ ๋ด์๋ณด๋ด๋ ์์
์ ํด๋ณด๊ฒ ์ต๋๋ค. ๐ง๐ป๐ป ๋ค์ด๊ฐ๋ฉฐ Delegate Pattern(๐? ๐??), ํญ์ ๊ณต๋ถํ๋ฉด์ ๊ทธ ์๊ฐ์๋ ์ดํดํ๊ณ ๋ถ๋ช
์๊ฒ ๋๋ฐ ๋๋์ฒด ์ด๋ ๋ถ๋ถ์ · ๋ ์ธ์ ์ฌ์ฉํด์ผ ํ๋์ง ๊ฐ์ด ์ ์กํ๋๋ค... ์ ์ญ์๋ ๊ทธ๋ฐ๋ฐ์... ์ด์ฉ ์ ์์ด์... ๋ค์ํ ์ํฉ์ ์จ๋ณด๋ ค๊ณ ๋
ธ๋ ฅํด๋ณด๋ ์ ๋ฐ์ ์ด๋ฒ์ ์ต๋ํ ์ฌ๋ฌ ์ํฉ์ ์ฌ์ฉํด๋ณด๋ฉด์ ์ด๋ค ์ฅ๋จ์ ์ด ์๋์ง๋ ์์๋ณด๊ณ ์ฌ์ฉ๋ฒ์ ์ต์ํด์ง๋ ค๊ณ ํด๋ณด๊ฒ ์ต๋๋ค. ๊ฐ์ด ๋
ธ๋ ฅํด๋ณด์์. ๐บ ์คํ ํ๋ฉด ์ค๋ ๊ตฌํํด ๋ณผ ํ๋ฉด์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ํฌ๊ฒ ์ํ ํ๋ฉด๊ณผ ์ฅ๋ฐ๊ตฌ๋ ๋ด๊ธฐ ํ๋ฉด 2๊ฐ์ง๋ก ๊ตฌ์ฑ๋์ด์๊ตฌ์. ์ฐ์ ํ๋ฆ์ ์ค๋ช
ํด๋๋ฆด๊ฒ์. ์ํ ํ๋ฉด์์ ์ฅ๋ฐ๊ตฌ๋ ๋ฒํผ์ ํด..