Xcode没有故事板和ARC

我已经下载了新的xcode-5,并开始使用它。

我们可以直接创build应用程序,包括故事板和ARC,它不要求像早期版本的选项。

所以,我的问题是我们如何使用Xcode5没有ARC和故事板。 我们必须手动删除故事板文件? 或者还有其他的select。

用Empty应用程序创build一个项目并添加任何viewcontroller(我在这里添加了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; } 

拆除ARC的步骤

1)在build立设置中将自动引用计数设置为NO

////////////////////////////////////////////////// /////////////////////////结束//////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////////////////// ///////////////////////

如果你已经创build应用程序与故事板ARC然后

删除故事板的步骤

1)从你的项目中删除Main.storyboard文件。

2)为你的控制器添加新的xib文件,如果它没有被编译的源代码添加到构build阶段,然后手动添加。

3)plist中删除主要故事板文件的基本名称

4)更改appdelegate didFinishLaunchingWithOptions文件并添加:

 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; } 


现在,在上面的例子中,你必须手动pipe理内存pipe理,

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

拆除ARC的步骤

1)在build立设置中将自动引用计数设置为NO

而不是删除故事板文件,您可以使用空应用程序模板创build一个新的项目。 所以你可以避免故事板文件的创build。

使用以下步骤来省略故事板: 在这里输入图像说明

  1. 用空应用程序模板创build一个新项目。
  2. 添加一个新的viewController(例如: LoginViewController
  3. 按照下面的指定更改AppDelegate.m文件中的didFinishLaunchingWithOptions

改成:

 #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:转到生成设置 – > Objective-C自动引用计数 – >否

创build新项目

![创build新项目]

删除信息中的主要故事板文件基本名称

//删除Info中的主要故事板文件基本名称

在appdelegate中添加此代码

 - (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; } 

然后自动删除你的故事板。

请试试这个…成功执行。 谢谢

ShortCut:我喜欢

在xcode4中创build没有Storyboard和ARC的项目,然后在xcode5中打开该项目。

当你创build一个新的项目时,Xcode 4有“Use Storyboard”checkbox。 可以抓取旧的Xcode 4应用程序模板(XML文件)并将其转换为Xcode 5.这样,您就可以重新获取旧模板,以便select是否要使用Storyboard。


我写了一个脚本,可以为你工作: https : //github.com/jfahrenkrug/Xcode4templates


运行脚本之后,您将在“新build项目”屏幕中显示“Xcode 4”部分:

在这里输入图像说明

然后 – 唉! – 你回到你心爱的select:

在这里输入图像说明

您需要从http://developer.apple.com/ios获得 Xcode 4 .app软件包的副本才能使用此脚本。

我有一个提示:

  1. 第一:我创build我的项目由XCode 4.6(因为这个版本是最接近XCode 5)。
    • 当然,使用XCode 4.6,您可以select使用或不使用ARC,Storyboard。
  2. 第二:之后我将用XCode 5打开我的项目。=>我认为Xcode 5会理解项目使用nonARC,当然,没有Storyboard。

我希望你的项目能够奏效! :d