gpt4 book ai didi

iphone - 在没有 xib 的 Cocoa Touch 中以编程方式加载 View Controller 和 View 层次结构

转载 作者:行者123 更新时间:2023-12-03 18:37:43 26 4
gpt4 key购买 nike

似乎所有 Cocoa Touch 模板都设置为加载 Nib 。

如果我想启动一个将使用 View Controller 的新项目,并以编程方式加载其 View (层次结构),而不是从 nib/xib,那么设置或调整模板的步骤是什么。

虽然我所要做的就是实现 -loadView,但每次我尝试这样做时都会遇到麻烦。

最佳答案

完全编程化的用户界面生成相当简单。首先,您需要编辑 main.m 以如下所示:

int main(int argc, char *argv[]) 
{
NSAutoreleasePool *pool = [NSAutoreleasePool new];
UIApplicationMain(argc, argv, nil, @"MyAppDelegate");
[pool release];
return 0;
}

其中 MyAppDelegate 是应用程序委托(delegate)类的名称。这意味着将在启动时创建 MyAppDelegate 的实例,这通常由应用程序的主 Nib 文件处理。

在 MyAppDelegate 中,实现与以下类似的 applicationDidFinishLaunching: 方法:

- (void)applicationDidFinishLaunching:(UIApplication *)application 
{
window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
if (!window)
{
[self release];
return;
}
window.backgroundColor = [UIColor whiteColor];

rootController = [[MyRootViewController alloc] init];

[window addSubview:rootController.view];
[window makeKeyAndVisible];
[window layoutSubviews];
}

其中 MyRootViewController 是窗口中主视图的 View Controller 。这应该初始化主窗口,并将由 MyRootViewController 管理的 View 添加到其中。 rootController 作为实例变量保留在委托(delegate)中,以供以后引用。

这应该允许您通过 MyRootViewController 以编程方式生成用户界面。

关于iphone - 在没有 xib 的 Cocoa Touch 中以编程方式加载 View Controller 和 View 层次结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/809898/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com