【问题标题】:Save Data (Keep text in textfields on next launch)保存数据(在下次启动时将文本保留在文本字段中)
【发布时间】:2014-05-01 18:08:57
【问题描述】:

我有一堆文本字段,用户可以在其中输入数据。每天有 6 个文本字段(不包括周六、周日),我需要保存文本字段中的数据(字符串文本),以便下次启动时使用它们。

我该怎么做呢,谢谢!

【问题讨论】:

标签: objective-c persistent-storage


【解决方案1】:

你可以使用NSUserDefaults

[[NSUserDefaults standardUserDefaults] setObject:_sundayTextField.text ForKey:@"Sunday"];
[[NSUserDefaults standardUserDefaults] synchronize]; // Writes modifications to disk thus making your data persistent between launches

当你的文本字段被创建时:

_sundayTextField = (NSString*)[NSUserDefaults standardUserDefaults] objectForKey:@"Sunday"];

其他日子也这样做,并确保存储在用户默认字典中的对象不是null(如果是这样,只需将文本字段留空或使用初始值)。

NSUserDefaults 易于使用并且在启动之间保持不变。 对于更复杂的数据,CoreData 是首选。

【讨论】:

  • 设置对象后不要忘记[[NSUserDefaults standardUserDefaults] synchronize];
  • @Flexicoder 当然,感谢您的评论,我将编辑我的答案
【解决方案2】:

你有很多选择

  1. NSUserDefaults - How to save data with NSUserDefaults using data from NSMutableArray
  2. 将数据写入 plist 并重新加载 - iPhone read/write .plist file
  3. CoreData - http://www.raywenderlich.com/934/core-data-tutorial-for-ios-getting-started

真的取决于你希望用你存储的数据实现什么

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-29
    • 1970-01-01
    • 1970-01-01
    • 2018-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多