[iOS] LoadView

나는 사과·2021년 12월 5일
0

iOS

목록 보기
7/11

지금까지 View를 코드로 그리고 있었으면서 VC(View Controller) Life Cycle에서 LoadView라는 부분을 크게 신경쓰지 못하고 있었는데.. 최근 회사에서 리디자인 작업을 진행하면서 맡은 뷰를 Objective-C + Storyboard 조합에서 Swift + 코드 조합으로 컨버팅도 같이 진행을 하면서 LoadView의 중요성을 느끼게 되어서 다시 정리해보려고 합니다.

스토리보드를 주로 사용하는 iOS 개발자 분들은 loadView 하는 과정을 스토리보드를 통해서 진행하게 되어서 아마 VC 따로 loadVIew를 override 하는 과정을 많이 겪지는 않을 것 이다.

나는.. 처음 ios 공부를 시작하고 나서 단! 몇 번만 스토리보드를 사용하고 Xcode 내에서 스토리 보드의 뷰가 많아지면 불러내는 속도도 많이 느려진다는 사실을 알게된 이후로는 뭔가 코드로 뷰를 그리기 시작했다. 근데도.. loadView에 대해 크게 생각하지 못했다.. viewDidLoad가 있었으니깐.. 이제라도 코드로 뷰를 그릴 경우 loadView에 대해 중요성을 알게되어서 다행인 것 같다.

View가 Load 될 경우

  • awakeFromNib
    : xib 파일이 생성되어 있는 경우에 호출. → 스토리 보드 사용하면 자동 호출
  • loadView
    : xib를 사용하지 않고 view를 로드하는 경우. xib가 존재하는데 override 하는 경우에는 xib가 무시됨. → 코드로 뷰를 그릴 경우 필요하면 override 해서 호출

메모리에 VC가 로드될때 호출되는 것이다. 그러면 뷰를 그리거나, 뷰의 값이나 특성 값들을 할당할 것들을 loadView에 넣어주면 되는것이다. (이 과정이 스토리보드일 경우 필요 없는게, 스토리보드에 뷰를 넣고.. 특성 값을 넣어주는 과정을 스토리보드에서 해주었기 때문이다.)

그러면 tabBar를 사용해서 뷰를 들어간 후에 나갔다가 나중에도 들어갈 경우에ViewWillAppear가 호출되기 이전의 뷰의 모습이 그려질 것이다!!!

0개의 댓글