1

我想知道如何在 Xcode 5 中设置应用程序委托,因为它与以前的版本不同。我希望通用视图控制器文件(ViewController.h 和 .m)成为控制我在应用程序委托中设置的 rootViewController 的文件。这是自动发生的还是你需要在代码中做些什么?这就是我设置 appDelegate.m 的方式

    *(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary   *)launchOptions
{
    CGRect viewRect = [[UIScreen mainScreen]bounds];
    self.window = [[UIWindow alloc]initWithFrame:viewRect];
    UIViewController  *viewController = [[UIViewController alloc]init];
    self.window.rootViewController = viewController;
    [self.window makeKeyAndVisible];

如果我希望我的 rootView 控制器成为表视图控制器或其他东西,我需要先将它嵌入到基本的 VC 中吗?

4

2 回答 2

5

要以编程方式执行此操作,您可以将其设置为 a,UITableViewController因为它是UIViewController. 如果你想使用已经创建ViewController的,只需将.h文件中的子类从更改UIViewControllerUITableViewController,并将 tableview 委托和数据源添加到.m.

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];

UIViewController *mainViewController = [storyboard instantiateInitialViewControllerWithIdentifier:@"myViewController"];

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

或者,如果您只想在视图控制器中绘制视图,请创建一个类并执行此操作

MyViewController  *viewController = [[MyViewController alloc]init];
self.window.rootViewController = viewController;

如果你想通过故事板设置你的根视图,你可以检查 __Is Initial view controller` 选项

在此处输入图像描述

于 2013-10-18T21:38:16.737 回答
0

如果我希望我的 rootView 控制器成为表视图控制器或其他东西,我需要先将它嵌入到基本的 VC 中吗?

不。

您可以将任何 UIViewController 类设置为 rootViewController。我假设您正在代码中构建 viewController 层次结构,并且您没有使用 InterfaceBuidler。虽然也使用 Interface builder,但您可以使用任何 viewContorller 作为 rootviewcontroller,使用故事板或普通 xib。

于 2013-10-18T21:23:57.787 回答