programing

스토리보드 및 ARC가 없는 Xcode

sourcejob 2023. 5. 24. 22:05
반응형

스토리보드 및 ARC가 없는 Xcode

저는 새로운 xcode-5를 다운로드하여 사용하기 시작했습니다.

우리는 스토리보드와 ARC를 포함한 애플리케이션을 직접 만들 수 있으며, 이전 버전과 같은 옵션을 요구하지 않습니다.

그래서 제 질문은 어떻게 ARC와 스토리보드 없이 xcode5를 사용할 수 있는지에 대한 것입니다.스토리보드 파일을 수동으로 제거해야 합니다. 아니면 다른 옵션이 있습니까?

빈 응용 프로그램으로 프로젝트를 만들고 뷰 컨트롤러를 추가합니다(여기에 TestViewController 추가).

   - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions
 {
   self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
   // Override point for customization after application launch.
   TestViewController *test = [[TestViewController alloc]     initWithNibName:@"TestViewController" bundle:nil];
   UINavigationController *nav = [[UINavigationController alloc]  initWithRootViewController:test];
   self.window.rootViewController = nav;
   [self.window makeKeyAndVisible];
   return YES;
 }

호 제거 단계

빌드 내 설정은 자동 참조 카운트를 NO설정합니다.

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

스토리보드와 ARC를 사용하여 응용프로그램을 이미 만든 경우

스토리보드 제거 단계

프로젝트에서 Main.storyboard 파일을 제거합니다.

컨트롤러에 대해 xib를 사용하여 새 파일을 추가합니다. 빌드 단계에서 컴파일된 소스에 추가되지 않은 경우 수동으로 추가합니다.

목록에서 주 스토리보드 파일 기본 이름을 제거합니다.

앱 대표자가 옵션으로 실행 완료 파일을 변경하고 다음을 추가합니다.

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] ;

[self.window makeKeyAndVisible];

다음과 같이.

  - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
 {
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] ;

     // Override point for customization after application launch.

     TestViewController *test = [[TestViewController alloc]     initWithNibName:@"TestViewController" bundle:nil];
     UINavigationController *nav = [[UINavigationController alloc]  initWithRootViewController:test];
     self.window.rootViewController = nav;
     [self.window makeKeyAndVisible];

     return YES;
}


위의 예에서는 메모리 관리를 수동으로 관리해야 합니다.

 self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease]; 

 [test release]; 

호 제거 단계

빌드 내 설정은 자동 참조 카운트를 NO설정합니다.

스토리보드 파일을 삭제하는 대신 빈 응용프로그램 템플릿으로 새 프로젝트를 만들 수 있습니다.스토리보드 파일 생성을 방지할 수 있습니다.

다음 단계에 따라 스토리보드를 생략합니다.여기에 이미지 설명 입력

  1. 빈 응용프로그램 템플릿을 사용하여 새 프로젝트를 만듭니다.
  2. 새 뷰 컨트롤러 추가(예:LoginViewController)
  3. 변경할 내용didFinishLaunchingWithOptionsAppDelegate.m아래에 지정된 대로 파일을 저장합니다.

변경 대상:

#import "LoginViewController.h"

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

    // Override point for customization after application launch.
    self.window.backgroundColor = [UIColor whiteColor];

    LoginViewController *loginVC = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];
    UINavigationController *navigationController = [[UINavigationController alloc]  initWithRootViewController:loginVC];

    self.window.rootViewController = navigationController;
    [self.window makeKeyAndVisible];

    return YES;
}

ARC 제거: 빌드 설정으로 이동 -> 목표-C 자동 참조 카운트 -> NO

새 프로젝트 생성

![새 프로젝트 만들기]

정보에서 주 스토리보드 파일 기본 이름 제거

//정보에서 기본 스토리보드 파일 기본 이름 제거

앱 대리인에 이 코드 추가

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

    // Override point for customization after application launch.
    self.window.backgroundColor = [UIColor whiteColor];

    LoginViewController *loginVC = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];
    UINavigationController *navigationController = [[UINavigationController alloc]  initWithRootViewController:loginVC];

    self.window.rootViewController = navigationController;
    [self.window makeKeyAndVisible];

    return YES;
}

그런 다음 스토리보드를 자동으로 제거합니다.

시도해 보십시오...성공적으로 실행되었습니다.감사해요.

바로 가기: 기본 설정

xcode4에서 Storyboard와 ARC 없이 프로젝트를 만든 다음 xcode5에서 해당 프로젝트를 엽니다.

Xcode 4는 새 프로젝트를 만들 때 "스토리보드 사용" 확인란을 가지고 있었습니다.이전 Xcode 4 응용프로그램 템플릿(XML 파일)을 가져와 Xcode 5로 변환할 수 있습니다.그러면 스토리보드를 원하는지 여부를 선택할 수 있는 이전 템플릿을 다시 얻을 수 있습니다.


저는 당신을 위해 모든 것을 할 수 있는 대본을 썼습니다. https://github.com/jfahrenkrug/Xcode4templates


스크립트를 실행하면 "새 프로젝트" 화면에 "Xcode 4" 섹션이 나타납니다.

여기에 이미지 설명 입력

그런 다음 - 아아! - 사랑하는 선택지를 돌려받습니다.

여기에 이미지 설명 입력

이 스크립트를 사용하려면 http://developer.apple.com/ios 의 Xcode 4.app 번들 복사본이 필요합니다.

팁이 있습니다.

  1. 첫 번째: XCode 4.6으로 프로젝트를 만듭니다(이 버전이 XCode 5에 가장 가깝기 때문입니다).
    • 물론 XCode 4.6에서는 ARC, Storyboard 사용 여부를 선택할 수 있습니다.
  2. 두 번째: 그 후에 저는 XCode 5로 제 프로젝트를 열 것입니다. => Xcode 5는 프로젝트가 nonARC를 사용하는 것이고, 물론 스토리보드가 없다는 것을 이해할 것이라고 생각합니다.

당신의 프로젝트가 잘 되길 바랍니다! :d

언급URL : https://stackoverflow.com/questions/17234172/xcode-without-storyboard-and-arc

반응형