iOS 15์์๋ Sheet์ ์ฌ๋ฌ ์ปค์คํ
์ต์
์ ์ถ๊ฐํ ์ ์์ต๋๋ค. ex. ํ๋ฉด์ ์ ๋ฐ ํฌ๊ธฐ๋ก ์ํธ๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค. ex. Dimmed View๋ฅผ ์ ๊ฑฐํ ์ ์์ต๋๋ค. ex. ์ํธ ์๊ณผ ์ํธ ๋ค์์ ๋์์ ์ฝํ
์ธ ์ ์ํธ ์์ฉํ ์ ์๋๋ก ์ฑ์์ ๋น๋ชจ๋ฌ ํ๊ฒฝ์ ๊ตฌ์ถํ ์ ์์ต๋๋ค. 1. Getting a sheet Sheet ์ธ์คํด์ค๋ฅผ ์์ฑํฉ๋๋ค. UIPresentationController์ ์๋ธ ํด๋์ค์ธ UISheetPresentationController๋ฅผ ์ด์ฉํฉ๋๋ค. ์ํธ๋ก ๋์ฐ๊ณ ์ถ์ ์ธ์คํด์ค์ sheetPresentationController๋ฅผ ํธ์ถํฉ๋๋ค. let viewControllerToPresent = UIViewController() if let sheet = viewContr..
๐ iOS & Swift
์ฐ์ธก ํ๋ฉด์ ์ด๋ป๊ฒ ๊ตฌ์ฑํ ์ ์์๊น? ๊ฐ๋จํ๊ฒ TableViewController๋ฅผ ์ด์ฉํด๋ณด๋๋ก ํ์. ๋ค์ด๊ฐ๊ธฐ ์ ์ ์ฌ์ฉํ ํ๋กํ ์ฝ์ ๊ฐ๋จํ๊ฒ ์๊ฐํ๊ฒ ๋ค. CaseIterable ์ด๊ฑฐํ์ ๋ฐฐ์ด์ฒ๋ผ ์ฌ์ฉํ ์ ์๋๋ก ๋์์ฃผ๋ ํ๋กํ ์ฝ CustomStringConvertible ์๋ ๋งํฌ ์ฐธ๊ณ [Swift] CustomStringConvertible ํ๊ฐ์ง ์๋ก ์๊ฒ๋ ๊ฒ์ CustomStringConvertible ํ๋กํ ์ฝ์ ์ฑํํ๊ณ , ์ถ๋ ฅ์ ํ๋ฉด description์ผ๋ก ์ ํด ๋์ String ๊ฐ์ผ๋ก ์ถ๋ ฅ๋๊ธธ๋ ๊ทธ ๋์ Type ์ญ์ String์ธ ์ค ์์์ง๋ง Type์ ๊ทธ๋๋ก ์ด๊ฑฐํ ํ์
์ด์๋ค. print(SettingType.total)์ ๊ฐ์ด ์ถ๋ ฅ์ ํ๋ฉด "์ ์ฒด ์ค์ "๊ณผ ๊ฐ์ด ์ถ๋ ฅ๋๋๋ฐ ์ด๋ฅผ ํค..
๋ค์ด๊ฐ๋ฉฐ ๊ทธ ๋์ ๋๋ฌด ์๊ฐ์์ด forEach๋ฌธ์ ์ฌ์ฉํด์๋ ๊ฒ ๊ฐ๋ค. for-in๊ณผ ๋น์ทํ ์ญํ ์ ํ๋์ง๋ ์์์ผ๋ ์ ํํ ์ด๋ค ์ฐจ์ด๊ฐ ์๋์ง ๊น๊ฒ ์๊ฐํด ๋ณธ ์ ์ ์์๊ธฐ ๋๋ฌธ์ด๋ค. ์ฒจ์๋ ์ฌ์ฉํ๊ธฐ ์ฝ๊ณ ์ ์ธ๊ณ์๊ธฐ์ ๋ฌด์์ ์จ์์ง๋ง ์ด์ ๋ ์ด๋ค ์ฐจ์ด๊ฐ ์๋์ง๋ ์ง์ด๋ณด๊ณ ๊ฐ ๋์ด์ง ์์๊น ์ถ๋ค. ๋ฉํ ๋๊ป์ ์ด๋ฌํ ๋ถ๋ถ์ ๋ํด ์ธ๊ธํด์ฃผ์
์ ์ข์ ๊ธฐํ์ ์ ๋ฆฌ๋ฅผ ํด๋ณด๊ณ ์ ํ๋ค. for - in var nums: [Int] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] // ์ปฌ๋ ์
์ ์ฌ์ด์ฆ๋งํผ ๋ฐ๋ณต for num in nums { print(num) } // 5๋ณด๋ค ํฐ ์๋ง ์ถ๋ ฅ for num in nums where num > 5 { print(num) } // ์ง์๋ง ์ถ๋ ฅ for num ..
์ค๋์ ๋ญ๊ฐ ์๊ด์ค๋ฌ์ด(?!) ๋ ์
๋๋ค. ์๊ฐ๋ง ํ์๋ ์คํ์์ค Contributor ๋๊ธฐ ๋ชฉํ๋ฅผ ๋ฌ์ฑํ๊ธฐ ๋๋ฌธ์ธ๋ฐ์. ์ฌ์ค ์ด๋ ๋ด๋๊ธฐ ์ ๋ง ๋ถ๋๋ฌ์ด Commit์ผ๋ก ๋ ๋ก ๋จน์ ๋๋์ด ์์ง๋ง์ ๊ทธ๋๋ ๋ฟ๋ฏํด์ ๊ธฐ๋ก์ ๋จ๊น๋๋ค. ํ์์๋ ์ ๋ช
ํ ์คํ์์ค์ ๊ธฐ์ฌ๋ฅผ ํ๊ณ ์ถ๋ค๋ ๋ง์ฐํ ๊ฟ์ ๊ฐ์ง๊ณ ์์์ง๋ง ์๋๊ฐ ์ ํ ๋์ง ์์์ต๋๋ค. ์์น ๊ณผ์ 9์ผ์ฐจ์ ์ ์ด๋ค๋ฉด์ ์ค๋์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋ํด์ ๋ด์ฉ์ ๋ค๋ฃจ์๋๋ฐ์. ๋ฉํ ๋๊ป์ ์์ฃผ ์ฌ์ฉ๋๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ช ๊ฐ๋ฅผ ์๊ฐํด์ฃผ์
จ์ต๋๋ค. ๊ทธ ์ค FSCalendar ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ๋๋ฆ ์ ์ฆ์ ๊ด๊ณ๋ฅผ ๊ฐ์ง๊ณ ์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์๋๋ฐ์. ๊ฐ์ฅ ์ต๊ทผ์ ํ ํ๋ก์ ํธ์์๋ FSCalendar๋ฅผ ์ฌ์ฉํ์๊ณ , ๋๋ฆ ์ปค์คํ
๋ ํ๊ณ ํ์์ต๋๋ค. ์ด๋ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ Contributor๋ก ์ด๋ฆ์ ..
Swift 5๋ถํฐ ์ง์ํ๋ ๋ฌธ์์ด ํํ ๋ฐฉ๋ฒ์ ๋ํ ๊ฐ์ ์ ์ ๊ฐ์ด ์์๋ด
์๋ค. SE-0200 Enhancing String Literals Delimiters to Support Raw Text ๋ง์ ๋ค๋ฅธ ์ธ์ด์ ๋ง์ฐฌ๊ฐ์ง๋ก Swift๋ ์ด์ค์ผ์ดํ ๋ฌธ์( \ )๋ฅผ ์ฌ์ฉํด์ ๋ฌธ์์ด ๋ฆฌํฐ๋ด ๋ด์์ ํ์ ๋ฌธ์์ ํน๋ณํ ํด์์ ๋ง๋ญ๋๋ค. ์ด์ค์ผ์ดํ ๋ฌธ์ ์ํ์ค๋ ๋ฌธ์์ด ๊ตฌ๋ถ ๊ธฐํธ(ํฐ ๋ฐ์ดํ), ์ด์ค์ผ์ดํ ๋ฌธ์(๋ฐฑ ์ฌ๋์), ๋ฌธ์์ด ๋ณด๊ฐ ๋ฑ์ ๋ํ ๋ฌธ์ ์งํฉ์ ๋ํ๋
๋๋ค. ์ฌ์ค ์ด์ค์ผ์ดํ ๋ฌธ์๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ฌด ๊ท์ฐฎ์ ์ผ์ด๊ณ , ๋ฌธ์์ด ๋ฆฌํฐ๋ด ์์ ๋ง์ ์ด์ค์ผ์ดํ ์ํ์ค๊ฐ ํฌํจ๋์ด ์์ผ๋ฉด ์ฝ๊ธฐ ์ด๋ ต์ต๋๋ค. ์ด๋ฅผ Apple์์ ์์์ฃผ์๋์ง Swift 5๋ถํฐ๋ ์กฐ๊ธ ๋ ๋จ์ํ๊ณ ๊น๋ํ๊ฒ ๋ฌธ์์ด ๋ฆฌํฐ๋ด ๊ตฌ๋ฌธ์ ์์ฑํ ..
tintColor UIImageView - Instance Property ๋ทฐ ๊ณ์ธต์์ ํ
ํ๋ฆฟ ์ด๋ฏธ์ง์ ์์กฐ๋ฅผ ์ง์ ํ๋๋ฐ ์ฌ์ฉ๋๋ ์ปฌ๋ฌ์
๋๋ค. var tintColor: UIColor! { get set } default๋ nil์
๋๋ค. ๋ง์ฝ nil์ด ์๋๋ผ๋ฉด ์ปฌ๋ฌ๋ ์ด๋ฏธ์ง ๋ทฐ์ ์ฒจ๋ถ๋ ํ
ํ๋ฆฟ ์ด๋ฏธ์ง์ ์ ์ฉ๋ฉ๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก tintColor๋ UIView๊ฐ ๊ฐ์ง๊ณ ์๋ ํ๋กํผํฐ์
๋๋ค. ์์๊ฐ ๋๋ ๋ทฐ์ tintColor๋ฅผ ๋ณ๊ฒฝํ๋ฉด ์์๋ฐ๋ ํ์ ๋ทฐ์ ์ฐจ๋ก๋๋ก ์ํฅ์ ์ค ์ ์์ต๋๋ค. override func viewDidLoad() { view.tintColor = UIColor.red } func application(_ application: UIApplication, didFinishLaunchi..
Alpha UIView์ ์ธ์คํด์ค ์์ฑ var alpha: CGFloat { get set } ์ด ์์ฑ์ ๊ฐ์ 0.0 ~ 1.0๊น์ง์ ๋ถ๋ ์์์ ์ซ์๋ก ์ด๋ฃจ์ด์ ธ์๋ค. 0.0์ผ๋ก ๊ฐ๊น์์ง์๋ก ํฌ๋ช
ํด์ง๊ณ , 1.0์ผ๋ก ๊ฐ๊น์์ง์๋ก ๋ถํฌ๋ช
ํด์ง๋ค. ์ด ์์ฑ์ ๊ฐ์ ๋ณ๊ฒฝํ๋ฉด ํ์ฌ ๋ทฐ์ ์ํ ๊ฐ๋ง ์
๋ฐ์ดํธ ๋๋ค. ๊ทธ๋ฌ๋ ํด๋น ์ํ ๊ฐ์ ๋ถ์ฌ๋ ํฌ๋ช
๋๋ ํ์ ๋ทฐ๋ฅผ ํฌํจํ์ฌ ๋ทฐ์ ๋ชจ๋ ์ปจํ
์ธ ์ ์ํฅ์ ์ค๋ค. ์ํ๊ฐ์ ๋ํ ๋ณ๊ฒฝ ์ฌํญ์ ์ ๋๋ฉ์ด์
ํ ์ ์๋ค. Opacity CALayer์ ์ธ์คํด์ค ์์ฑ var opacity: Float { get set } ์ด ์์ฑ์ ๊ฐ์ 0.0(ํฌ๋ช
)์์ 1.0(๋ถํฌ๋ช
) ์ฌ์ด์ฌ์ผ ํ๋ค. ํด๋น ๋ฒ์๋ฅผ ๋ฒ์ด๋ ๊ฐ์ ์ต์๊ฐ, ์ต๋๊ฐ์ผ๋ก ๊ณ ์ ๋๋ค. ๊ธฐ๋ณธ ๊ฐ์ 1.0์ด๋ค. Alpha ์์ฑ๊ณผ๋..
0. ๋ค์ด๊ฐ๋ฉฐ ์ต๊ทผ์ ํ์ต์ ์งํํ๋ฉด์ ๊ฐ์ง๋ ค๋ ํ๋ ์ค ํ๋๊ฐ ์๋ฌธ์ ์ต๋ํ ๊ฐ์ ธ๋ณด๋ ค๊ณ ํ๋ ๊ฒ์
๋๋ค. ์ด์ ์๋ ๊ทธ๋ฅ ๋ฌด์์์ ์ผ๋ก ์์ฑํ๋ ์ฝ๋๊ฐ ๋ง์๊ณ , ์ ์ฝ๋๋ฅผ ์ด๋ ๊ฒ ์์ฑํด์ผ ํ๋์ง ์๋ฌธ์ ๊ฐ์ ธ๋ณธ ์ ์ด ์๊ฐ๋ณด๋ค ์์๋ ๊ฒ ๊ฐ์ต๋๋ค. ์กฐ๊ธ์ ๋ ๊ผผ๊ผผํ๊ฒ ๊ทธ๋ฆฌ๊ณ ์ฒ์ฒํ ์ ํํ๊ฒ ํ์ตํด๋๊ฐ๋ ค๊ณ ํฉ๋๋ค. ๋ฐ๋ณต ์์
์ ์ค์ด๊ธฐ ์ํด์ IBOutlet Collection์ ์ด์ฉํด์ ์ข
์ข
View๋ฅผ ์ฐ๊ฒฐํ๊ณ ๋ ํ์๋๋ฐ ์ IBOutlet์ผ๋ก ์ฐ๊ฒฐํ ๋ทฐ์๋ weak ์์์ด๊ฐ ๋ถ์ด ์๊ณ , IBOutlet Collection์ผ๋ก ์ฐ๊ฒฐํ ๋ทฐ์๋ weak ์์์ด๊ฐ ๋ถ์ด ์์ง ์์์ง ์๊ฐํด ๋ณธ ์ ์ด ์์๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ด๋ฒ์ ์์น ๊ฐ์๋ฅผ ๋ค์ผ๋ฉด์ ์๋ฌธ์ด ๋ค์ด์ ์กฐ์ฌํด๋ณด๋ ค๊ณ ํ์๋๋ฐ, ๋ง์นจ Mission ๊ณผ์ ๋ก ๋์ ์ฆ..