应用程序在ipod touch上崩溃但在iphone仿真器上没有崩溃

时间:2011-04-13 16:10:19

标签: iphone ipod-touch

我一步一步地遵循苹果教程"Your First iOS Application",它在iPhone模拟器上完美运行。

但是当我尝试在ipod touch上部署它时,应用程序崩溃了。

这是一个有问题的方法:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{

    MyViewController *acontroller = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:[NSBundle mainBundle]];
    [self setMyViewController:acontroller];

    [[self window] setRootViewController:[self myViewController]];    // crash here

    [self.window makeKeyAndVisible];

    [acontroller release];

    return YES;
}

以下是错误消息:

011-04-13 18:07:53.730 ios_HelloWorld[865:207] *** -[UIWindow setRootViewController:]: unrecognized selector sent to instance 0x119520
2011-04-13 18:07:53.754 ios_HelloWorld[865:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[UIWindow setRootViewController:]: unrecognized selector sent to instance 0x119520'
2011-04-13 18:07:53.770 ios_HelloWorld[865:207] Stack: (
    843631901,
    849079828,
    843635709,
    843131673,
    843094080,
    11801,
    857435720,
    857434728,
    857767424,
    857765436,
    857763988,
    875472868,
    843380011,
    843377695,
    857431048,
    857424432,
    11553,
    11476
)
terminate called after throwing an instance of 'NSException'

考虑一下我一步一步地遵循教程(并由我自己重新完成),它总是在这个地方崩溃。

有什么想法吗?

感谢

风筝

3 个答案:

答案 0 :(得分:3)

答案 1 :(得分:1)

查看文档,该iOS版本上没有所需的属性。您必须更新或构建一些条件解决方法。

  

rootViewController根视图   窗户的控制器。

     

@属性(非原子,保留)   UIViewController * rootViewController   讨论根视图控制器   提供了内容视图   窗口。将视图控制器分配给   此属性(以编程方式   或使用Interface Builder)安装   视图控制器的视图为   窗口的内容视图。如果   窗口具有现有的视图层次结构,   之前删除旧视图   安装了新的。

     

此属性的默认值为   为零。

     

可用性适用于iOS 4.0和   后

答案 2 :(得分:1)

setRootViewController方法仅适用于iOS 4.0及更高版本。