0

当我运行样本信号时,appDelegate.m 文件中发生错误中止

self.view.controller=root.view.controller 

请帮助我,我在下面添加了代码

-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    /* bad signal occurred at this line */
    self.window.rootViewController=self.viewController;
    [self.window makeKeyAndVisible];
    return YES;
}

谢谢

4

2 回答 2

1

UIWindow rootViewController 属性在 iOS4 之前不存在。如果您尝试在装有 iOS 3 或更旧版本的设备上运行此代码,它将崩溃。

在您的 AppDelegate 中,您可以改用 addSubview。

//self.window.rootViewController = self.viewController; // Only iOS >= 4 [self.window addSubview:self.viewController.view]; [self.window makeKeyAndVisible]; return YES;

希望这可以帮助。

于 2012-10-25T18:47:22.153 回答
0

你的语法self.view.controller = root.view.controller有点奇怪。我想你的意思是self.viewController = rootViewController?即便如此,那也是不正确的。

尝试类似的东西 -

self.viewController = [[YourViewController alloc]init];
self.window.rootViewController = self.viewController;

将 YourViewController 替换为控制器的类。

于 2012-10-25T18:49:09.547 回答