【问题标题】:NSUserDefaultsController keys return nilNSUserDefaultsController 键返回 nil
【发布时间】:2011-08-17 14:19:30
【问题描述】:

我正在尝试实现首选项面板。我有一个绑定到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];

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

【问题讨论】:

    标签: objective-c cocoa


    【解决方案1】:

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

    【讨论】:

    • 是的,做到了。我一定在各种教程中错过了这一点。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-18
    • 2019-06-20
    • 2017-12-16
    • 2014-09-27
    • 2017-06-11
    相关资源
    最近更新 更多