Starbucks Caramel Frappuccino
본문 바로가기
  • 그래 그렇게 조금씩
UIKit/UIKit

Objective-C 코드 베이스 세팅

by Toughie 2024. 6. 4.

KAKAO-Choonsik

1. 신규 프로젝트 생성

상단 메뉴바 File->New->Project

Interface: Storyboard

Language: Objective-C


2. 스토리보드 제거

a. 좌측 네비게이터에서 Main 스토리보드 파일 제거

 

b. 좌측 네비게이터에서 Info.plist 확인 후 토글 전체 펼쳐

   Window Application Session Role의 Item에서 Storyboard Name 삭제 

 

c. 좌측 네비게이터에서 프로젝트 선택 후

   Build Settings -> Info.plist Values의 UIKit Main Storyboard File Base Name 삭제


3. Scene 설정

* iOS 13 이후 윈도우, 뷰 관련 설정은 SceneDelegate를 통하도록 변경됨.

 

SceneDelegate.m 파일에서 scene메서드 수정(윈도우 및 컨트롤러 설정)

(기본으로 최상단 네비게이션 컨트롤러를 사용한다는 가정의 예시 코드이다.)

 

//	SceneDelegate.m

// 사용할 초기 뷰컨트롤러 헤더파일 임포트
#import "ViewController.h"

@implementation SceneDelegate
	
    - (void)scene:(UIScene *)scene willConnectToSession:(UISceneSession *)session options:(UISceneConnecitonOPtions*)connectionOptions  {

      UIWindowScene *windowScene = (UIWindowScene *)scene;
      self.window = [[UIWindow alloc] initWithFrame:windowScene.coordinateSpace.bounds];
      self.window.windowScene = windowScene;

      //root viewController
      ViewController *viewController = [[ViewController alloc] init];
      //최상단 네비게이션 컨트롤러
      UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:viewController];

    //윈도우의 루트 뷰컨트롤러로 최상단 네비게이션 컨트롤러 설정
      self.window.rootViewController = navController;

      [self.window makeKeyAndVisible];
}
@end