iOS/iOS Swift 개발 일기

iOS 네비게이션 바 아이템 with/without storyboard (swift, obj-c)

Developer-Michelle 2022. 4. 25. 13:27

개발하는 정대리님 유튜브 영상 참고

https://youtu.be/sFpaAltVpCo

 

네비게이션 컨트롤러 

이거 선택하면 처음에 이 화면이 실행된다는 뜻

 

*오늘 학습 내용 중 잘 이해가 안 가는 부분:

1.

네비게이션 컨트롤러 vs. view controller ? 차이는 무엇일까... 아직 잘 모르겠다.

 

https://www.zehye.kr/ios/2020/03/13/iOS_vc_navigation_vc/

 

UINavigationController와 UIViewController 차이점 · 지혜의 개발공부로그

UINavigationController와 UIViewController 차이점 13 Mar 2020 | iOS 개인공부 후 자료를 남기기 위한 목적임으로 내용 상에 오류가 있을 수 있습니다. NavigationController 계층구조로 구성된 content를 순차적으로

www.zehye.kr

 

질문 뒤 답변:

  1. 화면이동을 하기 위해 네비게이션 뷰컨트롤러로 기존 뷰컨트롤러를 감싸서 사용하는거라고 보시면 됩니다
    -> 그렇다면 위에서 네비게이션으로 했다가 (화면이동을 위해) -> ViewController로 바꾼건 다시 종이 처리를 하기 위해?!
     
  2. 뷰컨트롤러 와 네비게이션 컨트롤러는 아예 다른 개념이에요
     
  3. 화면을 종이라고 보면 그게 뷰컨트롤러 이고
     
    화면들을 이동시키고 그것의 스택을 관리하기 위해 사용되는게 네비게이션 뷰커트롤러 입니다

 

 

2.

 

이 부분도 잘 모르겠다..

class ViewController: UINavigationController

원래 UIViewController를 상속하는데 UINavigationController 상속으로 수정한 부분.. 왜...? 일까

-> 화면 이동을 하기 위해서 ?!

 

 

해결 -->

1) 아마 화면 이동을 위해서 처음에 네비게이션 컨트롤러를 만드셨고,

2) 나중에 이것을 View Controller로 Class name 수정하신 이유는 어쨌든 이 메인 화면도 나중엔 종이 역할이니깐.. 이렇게 수정을 하시고

3) Class ViewController: UINavigationController {~~ 이렇게 네비게이션컨트롤러를 상속받게 고치셨나봅니다.

 

 

P.S. 조그만 사람모양 아이콘, 메시지모양 아이콘 -> Bar Button Item 라고 부른다.

 

*SceneDelegate 부분이 어렵게 느껴진다.