NSUserDefaultsController

NSUserDefaultsController

我正在尝试实施首选项面板。我有一个绑定到Shared User Defaults Controller的NSTextField。控制器密钥为values,模型密钥路径为FolderPath

每次我尝试在代码中访问该值时,字符串均为nil:

NSString *s = [[[NSUserDefaultsController sharedUserDefaultsController] defaults] stringForKey:@"FolderPath"];
NSLog(s);


如果我设置了默认字典,则文本框中的值会正确显示它,但是再次检索时它仍然为nil。

    NSDictionary *appDefaults = [NSDictionary dictionaryWithObject:@"foo"
                                                            forKey:@"FolderPath"];
    [[NSUserDefaultsController sharedUserDefaultsController] setInitialValues:appDefaults];


我在这里缺少基本的东西吗?

最佳答案

您是否曾经向该用户默认控制器发送-save:消息?如果不是,则可能不会保存您设置的值。

关于objective-c - NSUserDefaultsController键返回nil,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7088626/

10-10 17:40