TIL90 ✨

YaR LabΒ·2023λ…„ 8μ›” 26일
0

TIL✨

λͺ©λ‘ 보기
78/135
post-thumbnail

πŸ—“οΈ23.08.25

required init

https://babbab2.tistory.com/171

  1. required initμ΄λž€?

required init은 이름 κ·ΈλŒ€λ‘œ ν•„μˆ˜ μƒμ„±μžλΌλŠ” 뜻으둜, μžμ‹ ν΄λž˜μŠ€μ—μ„œ λ°˜λ“œμ‹œ κ΅¬ν˜„ν•΄μ•Όν•˜λŠ” μƒμ„±μžμž…λ‹ˆλ‹€.
μžμ‹ ν΄λž˜μŠ€μ—μ„œ 지정 μƒμ„±μžλ₯Ό 직접 μž‘μ„±ν•  κ²½μš°μ— required init이 ν•„μˆ˜μ μž…λ‹ˆλ‹€.
μ™œλƒν•˜λ©΄ μžμ‹ ν΄λž˜μŠ€μ—μ„œ 지정 μƒμ„±μžλ₯Ό κ΅¬ν˜„ν•  경우, 더 이상 상속 쑰건에 λ§žμ§€ μ•Šμ•„ λΆ€λͺ¨μ˜ required init을 상속받을 수 μ—†κΈ° λ•Œλ¬Έμ— required init을 μžμ‹ ν΄λž˜μŠ€μ—μ„œ ν•„μˆ˜λ‘œ μ •μ˜ν•΄μ€˜μ•Όν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

  1. required init(coder: NSCoder)λŠ” μ™œ ν•„μš”ν•œκ°€?

required init(coder: NSCoder)λŠ” storyboardλ‚˜ xib둜 λ§Œλ“€μ–΄μ§„ UI ν˜•νƒœλ₯Ό μ €μž₯ν•˜κ³  μžˆλŠ” xml을 κ°€μ Έμ˜¬ λ•Œ λΆˆλ¦¬λŠ”λ°, μŠ€ν† λ¦¬λ³΄λ“œλ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠμŒμ—λ„ ν˜ΈμΆœν•΄μ€˜μ•Ό ν–ˆμŠ΅λ‹ˆλ‹€.

μ΄λŠ” UIViewControllerμ—μ„œ μ±„νƒν•˜κ³  μžˆλŠ” NSCoding ν”„λ‘œν† μ½œμ— required init?(coder: NSCoder)이 있기 λ•Œλ¬Έμž…λ‹ˆλ‹€.

ν˜„μž¬ DiaryViewController 및 DiaryDetailViewControllerλŠ” UIViewControllerλ₯Ό 상속받고 μ˜μ‘΄μ„± μ£Όμž…μ„ μœ„ν•˜μ—¬ 지정 μƒμ„±μžλ₯Ό 가지고 μžˆμœΌλ―€λ‘œ μŠ€ν† λ¦¬λ³΄λ“œλ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠμŒμ—λ„ required init을 ν•„μˆ˜λ‘œ κ΅¬ν˜„ν•΄μ€˜μ•Ό ν•©λ‹ˆλ‹€.

κ°œν–‰ 였λ₯˜ 문제

swift 깃헙에 contributeν•  수 μžˆλŠ” 쒋은 기회

0개의 λŒ“κΈ€