Ios 使用coredata在swift中处理临时值的最佳方法

Ios 使用coredata在swift中处理临时值的最佳方法,ios,swift,core-data,Ios,Swift,Core Data,我正在尝试找出将一些信息保存到缓存中的最佳选项。我希望它在那个里,直到通知弹出并按下按钮。我已经完成了所有其他工作,但我不知道处理缓存中临时值的最佳解决方案是什么。即使应用程序关闭,我也需要使用它们。CoreData是使用NSUserDefaults的最佳解决方案吗?假设我有一个数组:var myArray=[] 我有文本字段。现在我希望texField输入位于数组中,如果按下通知类别按钮,它将从myArray中删除第一个数组项。我需要所有这些,即使应用程序已关闭。错误代码在“**”内 编辑:主

我正在尝试找出将一些信息保存到缓存中的最佳选项。我希望它在那个里,直到通知弹出并按下按钮。我已经完成了所有其他工作,但我不知道处理缓存中临时值的最佳解决方案是什么。即使应用程序关闭,我也需要使用它们。
CoreData
是使用
NSUserDefaults
的最佳解决方案吗?假设我有一个数组:
var myArray=[]
我有文本字段。现在我希望
texField
输入位于数组中,如果按下通知类别按钮,它将从
myArray
中删除第一个数组项。我需要所有这些,即使应用程序已关闭。错误代码在“**”内

编辑:主要问题是如何每次从数组中删除最后一个值?如果应用程序关闭,它将不起作用,但如果应用程序打开,它将起作用

这就是我到目前为止所做的。 这就是我发出通知的原因及其行动:

这是我的数组:
var myArray=[String]()

在这里,我将对象添加到数组中:


现在,如果触发了通知并按下了按钮,我想启动这个函数从数组中删除第一个对象:

您可以使用NSUserDefaults。如果应用程序处于关闭或打开状态,则可以访问它们。 了解有关NSUserDefault的更多信息

保存示例:

 NSUserDefaults.standardUserDefaults().setObject(nameField.text!, forKey: "name")
检索示例

最佳做法

if let predicate = NSUserDefaults.standardUserDefaults().objectForKey("name") {
//NSUserDefaults has a value
} else {
 //NSUserDefaults does not has a value
}

您可以使用NSUserDefaults。如果应用程序处于关闭或打开状态,则可以访问它们。 了解有关NSUserDefault的更多信息

保存示例:

 NSUserDefaults.standardUserDefaults().setObject(nameField.text!, forKey: "name")
检索示例

最佳做法

if let predicate = NSUserDefaults.standardUserDefaults().objectForKey("name") {
//NSUserDefaults has a value
} else {
 //NSUserDefaults does not has a value
}

@埃里克。很抱歉你以前告诉我了@亚历山大,那么我可以这样做?var nimi=NSUserDefaults.standardUserDefaults().setObject(nameField.text!),forKey:“name”)让predicate=CNContact.predicateForContactsMatchinname(nimi)@MaeseppTarvo我更新了我的答案希望这对我有帮助@MaeseppTarvo如果我的答案解决了你的问题,请将其标记为正确答案。Thnx@Alexander抱歉,如果应用程序关闭,它将无法工作。我使用这种方法将数组存储到userdefaults中,然后检索它并在索引(0)处删除,但若应用程序关闭,则无法工作。只有当它被打开的时候。但这是迄今为止最接近的答案。“你答对了。”埃里克。很抱歉你以前告诉我了@亚历山大,那么我可以这样做?var nimi=NSUserDefaults.standardUserDefaults().setObject(nameField.text!),forKey:“name”)让predicate=CNContact.predicateForContactsMatchinname(nimi)@MaeseppTarvo我更新了我的答案希望这对我有帮助@MaeseppTarvo如果我的答案解决了你的问题,请将其标记为正确答案。Thnx@Alexander抱歉,如果应用程序关闭,它将无法工作。我使用这种方法将数组存储到userdefaults中,然后检索它并在索引(0)处删除,但若应用程序关闭,则无法工作。只有当它被打开的时候。但这是迄今为止最接近的答案。你答对了,你试了什么?这里有一个相当不错的代码;你试过把所有的东西都放在一起吗?您看到了哪些具体问题?@dcsohl我所有的代码都在一起。我只是为了这个问题把它分开。主要的问题是,我需要将一些值存储到缓存中,但我不知道最好的方法是什么。是使用NSMutableArray的CoreData吗?您尝试了什么?这里有一个相当不错的代码;你试过把所有的东西都放在一起吗?您看到了哪些具体问题?@dcsohl我所有的代码都在一起。我只是为了这个问题把它分开。主要的问题是,我需要将一些值存储到缓存中,但我不知道最好的方法是什么。是使用NSMutableArray的CoreData吗?