2

我在设置包中有一个非常简单的设置。它只是用拨动开关设置的 TRUE 或 FALSE 值。基于此,我的应用程序是否应该显示一个按钮。很简单。

但是当我读取该值时,我得到一个空值。我知道它设置正确,因为我可以在设置应用程序中看到它。

这是我读取值的方式

myButton.hidden = ![[NSUserDefaults standardUserDefaults] boolForKey:@"my key"];

我把那行放在 viewDidLoad 中,放在 applicationDidFinishLaunching 中,什么都没有!我一直为空。

您的帮助将不胜感激。

4

1 回答 1

0

请注意,如果用户没有触摸设置并且您没有为您的设置值提供任何默认值(在代码中),它们将返回为 null ...如果您想设置“实际”默认值(所以当您调用它们时)您将获得一些价值)到您必须执行的设置(您应该检查它们是否尚未设置)..

NSMutableDictionary *d=[[NSMutableDictionary alloc] init];
    //set the values for d
    NSDictionary *dict = [NSDictionary dictionaryWithDictionary:d];
    [[NSUserDefaults standardUserDefaults] registerDefaults:dict];
    [d release];

希望能帮助到你

于 2012-11-05T17:30:13.227 回答