问题标签 [nsuserdefaults]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2486 浏览

cocoa - 将命令行参数(NSArgumentDomain)传递给 Xcode 下的程序

我希望能够将命令行参数传递给在 Xcode 下运行/调试的程序。我想这样做,以便我可以使用 Cocoa 的 NSUserDefaults 和 NSArgumentDomain 命令行启用调试模式。

怎么做?

谢谢!

0 投票
3 回答
1785 浏览

objective-c - 应用程序状态何时属于 Core Data 而不是 NSUserDefaults?

我正在尝试确定某些应用程序状态,特别是列表中的选定项,是否应该存储在 Core Data 或 NSUserDefaults 中。

一般来说,我认为应用程序的偏好和状态应该保留在 NSUserDefaults 中,而模型级数据应该保留在其他地方,比如 Core Data。到目前为止,我的模型是:

  • 是否应该存储数据?如果用户不合理地期望它是,则将其丢弃(例如,光标位置未保存在 TextEdit 中)
  • NSUserDefaults:
    1. 如果应用程序是多文档,该设置将适用于所有文档
    2. 可以想象,数据将在首选项中配置
    3. 将数据放在模型之外对测试是有意义的(用一个模型存储交换多个默认值)
  • 模型级
    1. 数据显然属于模型级对象的属性
    2. 数据足够大,将其存储在 NSUserDefaults 中会导致性能问题
    3. 用户重新创建数据会很困难或很耗时(他们肯定会认为丢失这些信息是“数据丢失”)

我计划将某些实体的排序顺序存储在 Core Data 中。如果没有此信息(即“sortIndex”或“order”属性),每个实体实例都必须使用来自用户默认值的数据进行扩充。

然而,在模型中存储状态似乎是一个滑坡。如果我存储排序顺序,那么存储选择似乎也是合适的,因为它们都是列表的状态。我的用例的选择数据实际上可能非常大。具体来说,一个列表中的图标取决于其每个子列表中的选择。

是否有人对 NSUserDefaults 与数据模型有严格的规定?

0 投票
8 回答
26574 浏览

objective-c - 将 UIColor 保存到 NSUserDefaults 并从中加载

什么是最简单的方法来保存一个然后把它取出来UIColorNSUserDefaults

0 投票
1 回答
2551 浏览

cocoa - 更改 NSUserDefaults 中的对象而不创建和重新设置副本

我已经存储了字典NSUserDefaults,我需要在该字典中添加/删除项目。

困扰我的是,要做到这一点,我必须创建整个字典的可变副本,更改一个元素并用新副本替换整个字典。

它涉及对层次结构更深的对象进行更多的复制和重新设置。

有没有更好的办法?

我试过使用[defaults setValue:… forKeyPath:@"foo.bar"],但这似乎不起作用(对象不可变)。

0 投票
2 回答
1414 浏览

objective-c - 使用 Flipside View Controller 从 NSUserDefaults 读取和更新应用程序设置

有没有人有一个很好的示例来使用翻转视图控制器从 NSUserDefaults 读取和更新应用程序设置。

我想阅读和编辑存储在文本框、pickerview 和滑块控件中的 4 个字段。任何示例代码都会有所帮助。

0 投票
1 回答
1315 浏览

objective-c - 从 NSUserDefault 读取和更新字典类型 PSMultiValueSpecifier

有谁知道如何轻松地将字典类型 PSMultiValueSpecifier 从 NSUserDefault 读取到 UIPickViewer 控件中,并使用 iPhone SDK 3.0 将更改保存回 NSUserDefaults?如果是这样,您可以发布一些特定的代码来有效地做到这一点吗?

0 投票
1 回答
677 浏览

iphone - 将字典类型 PSMultiValueSpecifier 从 NSUserDefault 读取到 UITableView

有谁知道如何轻松地将字典类型 PSMultiValueSpecifier 从 NSUserDefault 读取到 UITableView 控件中并使用 iPhone SDK 3.0 将更改保存回 NSUserDefaults?如果是这样,您可以发布一些特定的代码来有效地做到这一点吗?

0 投票
3 回答
210 浏览

iphone - iPhone:有预制的 UISettingsView 吗?

在启动时,如果用户没有对 NSUserDefaults 进行任何设置,我希望我的主视图做一个翻转视图,它会显示在设置应用程序中显示的相同内容。

是否有用于实例化设置使用的同一控制器的 API,或者我必须自己重新实现表格视图和控制器?

0 投票
1 回答
679 浏览

iphone - NSUserDefaults 返回的对象是否应该被释放

我想知道 NSUserDefault 返回的对象是在自动释放池中还是假设要释放它们,以及我应该如何知道任何给定的对象在自动释放池中。

0 投票
1 回答
764 浏览

iphone - NSUserDefaults 在 iPhone 模拟器中持续崩溃

在我开始之前,我会坦率地承认这是我的代码中的某些东西,但是导致它的原因并不是很明显。

我在 NSUserDefaults 中存储了一个布尔值和四个 NSDate 对象。我有一个将信息加载到控件中的视图:布尔值到一个开关中,并且 4 个日期值作为 4 个按钮上的标签作为格式化值加载。如果用户单击按钮,我将切换到带有 UIDatePicker 的新视图,该 UIDatePicker 根据单击的按钮预加载了来自 NSUserDefaults 的完整日期。第二个视图有两个按钮:取消和设置。如果您选择取消,我们将切换回第一个视图。如果您选择将 UIDatePicker 中的值设置为存储在 NSUserDefaults 中,则所选按钮的标签会更新,并且我们切换回第一个视图。

我可以通过单击一个按钮然后连续三次单击取消,然后第四次单击该按钮来始终使应用程序崩溃。从 NSUserDefaults 中检索值时,它在 objc_msgSend 中崩溃。

这是涉及的3个功能。

作为 iPhone 和 Obj-C 的新手,我确信有更好的方法来做事,我愿意接受建议。