在Swift中保存数据

时间:2016-02-24 23:10:12

标签: ios swift

在我的应用程序中,我创建了一个具有两个属性的结构:

struct questionCollection {
var question: String!
var answer: String! 
}

然后我创建了一个实例:

questionCollections = [questionCollection(question: "What is 1+1?", answer: "2")]

除此之外,我还有一个允许用户添加问题的功能:

@IBAction func appendQuestion(sender: AnyObject) {
    questionCollections += [questionCollection(question: questionInput.text, answer: answerInput.text)]
}

我的问题是保存用户提交的数据的最简单方法是什么?我之前只使用过NSUserDefaults而且我不知道该怎么做。

我真的找不到解决问题的方法,所以如果能得到一些很好的帮助。感谢

澄清:我想要做的就是存储数据,这样就可以在标签上显示,并检查是否选择了正确的答案。在标签出现之前,用户无需查看数据。我也只是创建一个简单的应用程序,所以我只需要将这些数据保存在设备上。

根据我现在所做的事情,我不确定是否需要保存我的数据,但是如果他们想要将来参考,有人仍然可以回答这个问题。

2 个答案:

答案 0 :(得分:1)

您以前尝试过使用Core Data吗?它是Apple的持久存储的默认解决方案(在本地保存并在应用程序的每次加载时再次出现)。更多信息可以在这里找到。 https://developer.apple.com/library/watchos/documentation/Cocoa/Conceptual/CoreData/index.html

答案 1 :(得分:1)

目前,您的结构可以表示为字典值:

 let dictionary:[String:String] = ["What is 1+1":"2", "What is 2+2": "4"]

您可以在NSUserDefaults中存储字典:

NSUserDefaults.standardUserDefaults().setObject(dictionary, forKey: "aKey")

我想说,在你的情况下,这将是最佳解决方案......