首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >不带故事板和ARC的Xcode

不带故事板和ARC的Xcode
EN

Stack Overflow用户
提问于 2013-06-21 19:29:22
回答 6查看 50.8K关注 0票数 116

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

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

所以,我的问题是,我们如何使用没有圆弧和故事板的xcode5。我们必须手动删除故事板文件吗?还有没有别的选择。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2013-07-29 18:57:52

创建一个包含空应用程序的项目,并添加任何视图控制器(我在此处添加了TestViewController )

代码语言:javascript
运行
复制
   - (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;
 }

删除弧形的步骤

1) In build setting set Automatic Reference Counting to NO。

///////////////////////////////////////////////////////////////////////////END///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

如果您已经使用storyboard和ARC创建了应用程序,则

删除情节提要步骤

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

2)使用xib为你的控制器添加新文件,如果在构建阶段没有添加到编译过的源代码中,则手动添加。

3) Remove Main storyboard file base name from plist.

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

代码语言:javascript
运行
复制
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] ;

[self.window makeKeyAndVisible];

就像:

代码语言:javascript
运行
复制
  - (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;
}

现在,在上面的示例中,您必须手动管理内存管理,

代码语言:javascript
运行
复制
 self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease]; 

 [test release]; 

删除弧形步骤

1) In build setting set Automatic Reference Counting to NO。

票数 150
EN

Stack Overflow用户

发布于 2013-09-20 14:30:02

您可以使用空的应用程序模板创建新项目,而不是删除情节提要文件。这样您就可以避免创建情节提要文件。

使用以下步骤可忽略情节提要:

  1. 使用空应用程序模板创建新项目。
  2. 添加新viewController (示例:LoginViewController)
  3. 按照以下指定更改AppDelegate.m文件中的didFinishLaunchingWithOptions

更改为:

代码语言:javascript
运行
复制
#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;
}

Remove ARC:转到Build Setting -> Objective-C Automatic Reference Counting -> NO

票数 44
EN

Stack Overflow用户

发布于 2013-12-11 16:31:58

创建新项目

//移除Info中的主序列图像板文件基名

在appdelegate中添加此代码

代码语言:javascript
运行
复制
- (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;
}

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

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

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17234172

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档