Iphone 什么时候应该以编程方式创建视图控制器,什么时候应该使用NIB文件?

Iphone 什么时候应该以编程方式创建视图控制器,什么时候应该使用NIB文件?,iphone,objective-c,cocoa,cocoa-touch,ios4,Iphone,Objective C,Cocoa,Cocoa Touch,Ios4,我正在尝试以编程方式创建视图控制器。我想知道什么时候应该使用NIB文件创建视图控制器,什么时候应该以编程方式创建它 我还希望获得创建不带NIB文件的视图控制器的分步说明。请参阅 这应该告诉您调用方法的时间和原因以及顺序 请参阅 这应该告诉您调用方法的时间和原因以及顺序 随时可以使用IB。在其余情况下使用代码 下面是如何在创建AppDelegate时去掉IB 删除Info.plist中的条目“Main nib file base name” 更改int retVal=UIApplicationMa

我正在尝试以编程方式创建视图控制器。我想知道什么时候应该使用NIB文件创建视图控制器,什么时候应该以编程方式创建它

我还希望获得创建不带NIB文件的视图控制器的分步说明。

请参阅

这应该告诉您调用方法的时间和原因以及顺序

请参阅


这应该告诉您调用方法的时间和原因以及顺序

随时可以使用IB。在其余情况下使用代码

下面是如何在创建AppDelegate时去掉IB

  • 删除Info.plist中的条目“Main nib file base name”
  • 更改
    int retVal=UIApplicationMain(argc、argv、nil、nil)到
    int retVal=UIApplicationMain(argc,argv,nil,@“MyCoolApplicationAppDelegate”)其中“mycolapplication”是应用程序的名称
  • applicationdFinishLaunching:application
    中的“MyCoolApplicationAppDelegate”中添加以下代码:

    窗口=[[UIWindow alloc]initWithFrame:[[UIScreen mainScreen]边界]]

  • 要创建不带nib的视图控制器,请执行以下操作:

    MyCoolViewController *myCoolViewController = [[MyCoolViewController alloc] init];
    
    在MyColViewController的加载视图中,您可以添加并初始化相应的视图,并通过以下方式将其附加到视图控制器:

    [self setView: MyCoolView];
    

    随时可以使用IB。在其余情况下使用代码

    下面是如何在创建AppDelegate时去掉IB

  • 删除Info.plist中的条目“Main nib file base name”
  • 更改
    int retVal=UIApplicationMain(argc、argv、nil、nil)到
    int retVal=UIApplicationMain(argc,argv,nil,@“MyCoolApplicationAppDelegate”)其中“mycolapplication”是应用程序的名称
  • applicationdFinishLaunching:application
    中的“MyCoolApplicationAppDelegate”中添加以下代码:

    窗口=[[UIWindow alloc]initWithFrame:[[UIScreen mainScreen]边界]]

  • 要创建不带nib的视图控制器,请执行以下操作:

    MyCoolViewController *myCoolViewController = [[MyCoolViewController alloc] init];
    
    在MyColViewController的加载视图中,您可以添加并初始化相应的视图,并通过以下方式将其附加到视图控制器:

    [self setView: MyCoolView];
    

    就个人而言,我喜欢将IB用于包含大部分静态视图的ViewController。当ViewController有很多视图需要动态创建或设置动画时,我更喜欢使用代码创建ViewController。

    我个人喜欢将IB用于包含大部分静态视图的ViewController。当一个ViewController有很多视图需要动态创建或设置动画时,我更喜欢用代码创建ViewController。

    这几乎是毫无意义的;你能试着把它说得更清楚些吗?请看这里这是给IB的。我需要没有IB。听起来好像有人在使用一些糟糕的英语翻译软件…你的帖子是我在stackoverflow上见过的单词沙拉的最好例子。如果你想得到任何答案,你必须弄明白。我想他是通过网络翻译工作的。我们将不得不从我们这一头开始做一些令人费解的事情。这几乎完全是无稽之谈;你能试着把它说得更清楚些吗?请看这里这是给IB的。我需要没有IB。听起来好像有人在使用一些糟糕的英语翻译软件…你的帖子是我在stackoverflow上见过的单词沙拉的最好例子。如果你想得到任何答案,你必须弄明白。我想他是通过网络翻译工作的。我们得从我们这一头开始搞些谜团。你能解释一下这个问题吗。当我在IB中创建viewcontroller时,awakefromnib没有调用。我想要使用IB和手动代码创建viewcontroller时的生命周期的单独列表。请解释。你能解释一下这个问题吗。当我在IB中创建viewcontroller时,awakefromnib没有调用。我想要使用IB和手动代码创建viewcontroller时的生命周期的单独列表。请解释。