我在山狮的Xcode 4.5中开发的应用程序在Lion和ML上完美运行。
我的Snow Leopard测试人员报告,当应用启动时,它会被禁用。由此他意味着没有任何控件处于活动状态,红色,黄色,绿色的“交通信号灯”显示为灰色。如果打开了另一个覆盖我的应用程序的应用程序,当移动覆盖应用程序时,它所覆盖的任何控件或控件的一部分都不存在。
菜单栏响应,我的偏好设置面板工作。该应用程序可以从菜单中关闭,我不知道它是否可以从键盘关闭。
使用相同序列代码的另一个应用程序可以正常工作。
我需要帮助制定解决方案。我不知道如何追踪这个。
答案 0 :(得分:2)
从根本上说,问题是你期望数据在NSUserDefaults中。在第一次启动时,NSUserDefaults为您访问的密钥返回nil,并通过以后的代码传递此nil结果会导致抛出异常。解决方案是在应用程序启动时使用NSUserDefaults注册默认值:
@implementation AppController
+ (void)initialize
{
NSDictionary *defaultValues = @{@"SomeKey" : @"DefaultValue"};
[[NSUserDefaults standardUserDefaults] registerDefaults:defaultValues];
}
@end