0

我在 Mountain Lion 上使用 Xcode 4.5 开发的应用程序可以在 Lion 和 ML 上完美运行。

我的雪豹测试仪报告说,当应用程序启动时,它被禁用。他的意思是没有任何控件处于活动状态,红色、黄色、绿色的“交通灯”变灰。如果打开了覆盖我的应用程序的另一个应用程序,则在移动覆盖应用程序时,它所覆盖的任何控件或控件的一部分都不存在。

菜单栏是响应式的,我的首选项面板有效。该应用程序可以从菜单关闭,我不知道它是否可以从键盘关闭。

另一个使用相同序列号的应用程序可以正常工作。

我需要帮助制定解决方案。我不知道如何追踪这个。

4

1 回答 1

2

从根本上说,问题在于您希望数据位于 NSUserDefaults 中。在第一次启动时,NSUserDefaults 为您访问的键返回 nil,并且通过后面的代码传递这个 nil 结果会导致抛出异常。解决方案是在应用程序启动时使用 NSUserDefaults 注册默认值:

@implementation AppController
+ (void)initialize
{
    NSDictionary *defaultValues = @{@"SomeKey" : @"DefaultValue"};
    [[NSUserDefaults standardUserDefaults] registerDefaults:defaultValues];
}
@end
于 2013-03-19T21:34:45.553 回答