-
[iOS] init(nibName:bundle:)κ³Ό init?(coder:) μμ보기iOS/π€ App 2021. 10. 25. 14:21
μλ νμΈμπΆ
μ΄λ² μκ°μλ UIViewController μ λ μμ±μμ λν΄μ μμλ³΄κ² μ΅λλ€.
μ΄ κΈμ ν΅ν΄ μμ±μκ° μΈμ μ΄λ»κ² μ¬μ©λλμ§ μκ²λμμΌλ©΄ μ’κ² μ΅λλ€!
UIViewController λ¬Έμμμ μ 곡νλ ViewController λ₯Ό μμ±ν μ μλ λ°©λ²
init(nibName:bundle) μμ보기
첫λ²μ§Έ μ λ¬μΈμ nibName
nib μ xib νΉμ storyboard νμΌμ λΉλμ κ²°κ³Όλ¬Όμ λλ€.
xib νμΌλ‘ μ μν VC λ κ·Έ μ΄λ¦μ κ·Έλλ‘ κ°μ§κ³ nib νμΌλ‘ λ³νλ©λλ€.
λ°λΌμ ViewController.xib λ "ViewController.nib" μΌλ‘ λ³νλ©λλ€.
nibNameμ ViewController κ° λκ² λ€μ!
μ€ν 리보λλ μ‘°κΈ λ€λ¦ λλ€.
xib μ λ¬λ¦¬ μ€ν 리보λλ νλμ νμΌμ
λ€μμ VC (μ¬) κ·Έλ¦¬κ³ VC κ°μ μ°κ²°μ 보, μνΈλ¦¬ν¬μΈνΈ μ 보κΉμ§ λ΄κ³ μμ΅λλ€.
μ€ν 리보λνμΌ νλμ νλμ VC λ§μ μμ±ν΄ λμλ€κ³ νλλΌλ,
ViewController.storyboard λ ViewController.nib μΌλ‘ λ³νλμ§ μμ΅λλ€.
λμ μ€ν 리보λνμΌμ λΉλνλ©΄ .stroyboardc λΌλ ν¨ν€μ§λ‘ μμ±λ©λλ€.
μ΄ ν¨ν€μ§λ μλ μ¬μ§κ³Ό κ°μ νμΌλ€λ‘ ꡬμ±λ©λλ€.
μ°Έκ³ λ‘ μλμ μμ±λ nib νμΌμ μ΄λ¦μ λ³΅μ¬ λΆμ¬λ£κΈ°νμ¬ μμ±μλνλ©΄ λ°νμ μ€λ₯κ° λ°μν©λλ€.
μ°μ .storyboardc νμΌ λ΄λΆμ nibName μ μμλ‘ μ¬μ©ν μλ μλ€ μ λλ§ μκ³ λμ΄κ°κ² μ΅λλ€.
κ²°λ‘ μ????
init(nibName:bundle)μ
xib νμΌμ μ΄μ©ν VC μμ±μ μ¬μ©ν μ μμ΅λλ€.
bundle μλ λ²λ€μ μ΄λ¦μ λ£μΌλ©΄ λλλ°, λν΄νΈ κ°μ΄ λ©μΈ λ²λ€μ΄λ―λ‘ μ§κΈ μν©μμλ nil μ λ£μ΄λ λ©λλ€.
μλμ κ°μ μ½λλ κ°λ₯ν©λλ€.
nibName κ³Ό bundle μ κΈ°λ³Έκ°μ΄ nil λ‘ μ€μ λμ΄μκΈ° λλ¬Έμ λλ€.
μμ κ°μ΄ νΈμΆν κ²½μ° μ΄λ ν UI κ΄λ ¨ νμΌ μ 보λ μ¬μ©νμ§ μμΌλ―λ‘,
ViewController.swift μ½λμ μ μλ λ΄μ©λ§μ λ°μν©λλ€.
μλλ ViewController.xib νμΌ μ 보λ₯Ό νμ©νμ¬ VC μΈμ€ν΄μ€λ₯Ό μμ±νκ³ , key window μ λ£μ΄μ£Όλ κ³Όμ μ λλ€.
init?(coder:)
init?(coder:)λ μ°λ¦¬κ° μ§μ νΈμΆν μΌμ΄ μμ΅λλ€.
coder μ λ¬μΈμμ μ λ¬ν μ μ ν NSCoder μΈμ€ν΄μ€λ₯Ό μ°λ¦¬κ° μ§μ λ§λ€μ΄ μ€μ μκΈ° λλ¬Έμ λλ€.
( λ§μ½ μλ€λ©΄ λκΈλ‘ μλ €μ£ΌμΈμ π²)
κ·ΈλΌ μΈμ νΈμΆλλλ?????
λ°λ‘ μμ€ν μ΄ μ€ν 리보λλ₯Ό μ¬μ©ν΄μ VC μΈμ€ν΄μ€λ₯Ό μμ±ν λ μ¬μ©ν©λλ€.
μ½λλ‘ κ°μ μ μΌλ‘ νΈμΆν μ μλ λ°©λ²μ λ€μκ³Ό κ°μ΄ μ€ν 리보λ μΈμ€ν΄μ€μ λ©μλλ₯Ό μ¬μ©νλ λ°©λ²μ λλ€.
λλ²μ§Έ λΌμΈμ μ½λλ₯Ό μ€νν λμ λ©μΈμ°λ λ μ½μ€νμ λλ€. init(coder:) κ° νΈμΆλμμμ μ μ μμ΅λλ€.
μ΄λ μμ€ν μ΄ μμ±ν μ½λμλ μ€ν 리보λ νμΌμ μ μν UI μ 보λ€μ κ°μ§κ³ μμ΅λλ€.
μ΄κ²μ unarchive νλ κ³Όμ μ κ±°μ³ UI λ΄μ©μ λ°μμν¨ VC μΈμ€ν΄μ€λ₯Ό μμ±ν©λλ€.
μ¬κΈ°μ UI λ΄μ©μ΄λ λ§ κ·Έλλ‘ μ€ν 리보λ νμΌμ μ μλ VC κ° κ΄λ¦¬νλ λ·° κ³μΈ΅μ κ΄ν λͺ¨λ μ 보μ λλ€.
μ€λλ λλ μ±μ₯νλ€!!π₯
π€π’[μ°μ§±μ iOS λΈλ‘κ·Έ]π΅π»
iOSλ₯Ό 곡λΆνλ©΄μ λ°°μ΄ λ΄μ©μ κΈ°λ‘νκ³ μμ΅λλ€.'iOS > π€ App' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[iOS] UITextField μ λΆμ¬λ£κΈ°λ₯Ό λ°©μ§νκΈ° (2) 2022.11.03 [iOS] 컀μ€ν ν°νΈλ₯Ό μ μ©ν΄λ³΄μ (0) 2021.11.06 [iOS] clipsToBounds μ masksToBounds (2) 2021.10.19 [SSAC μΉ] iOS κ°λ°μ λ°λ·κ³Όμ ν©κ²© νκΈ° (2021) (2) 2021.09.24 [iOS] Safe Area μ Layout Margins μ΄λ? (3) 2021.08.10