Ios NSUserDefaults在swift中用于保存TableView的字符串数组

Ios NSUserDefaults在swift中用于保存TableView的字符串数组,ios,arrays,swift,nsuserdefaults,Ios,Arrays,Swift,Nsuserdefaults,嗨,我有一个tableview,这是我在MyItemTableViewController类中的代码 var itemList = [String]() @IBAction func saveItemToList (segue: UIStoryboardSegue) { let AddNewItemViewController = segue.sourceViewController as! addItemTableViewController let name = AddN

嗨,我有一个
tableview
,这是我在
MyItemTableViewController
类中的代码

var itemList = [String]()

@IBAction func saveItemToList (segue: UIStoryboardSegue) {
    let AddNewItemViewController = segue.sourceViewController as! addItemTableViewController

    let name = AddNewItemViewController.itemName

    if name == "" {

    }
    else {
        itemList.append(name!)

        let indexToInsert = itemList.count == 0 ? 0 : itemList.count - 1

        let indexPath = NSIndexPath(forRow: indexToInsert, inSection: 0)

        tableView.insertRowsAtIndexPaths([indexPath], withRowAnimation: UITableViewRowAnimation.Automatic)
    }

}

如何使用
NSUserDefaults
保存数组我尝试了一些方法,但对我无效。

您可以这样设置
itemList
数组

let defaults = NSUserDefaults.standardUserDefaults()
defaults.setObject(itemList, forKey: "items")
defaults.synchronize()
当您需要从
NSUserDefaults
中提取时,可以这样提取

let defaults = NSUserDefaults.standardUserDefaults()
if let items = defaults.objectForKey("items") as? [String] {
    print(items)
}
或者也可以使用
stringarrayworky

if let items = defaults.stringArrayForKey("items") {
    print(items)
}
有关
NSUserDefaults
的更多详细信息,请阅读此

编辑:问题是您试图在Sting数组中添加
[String]
对象,这是不可能的,如果您想合并两个数组,请这样编写

if let items = defaults.stringArrayForKey("items") {
    self.itemList = self.itemList + items
}

您可以这样设置
itemList
数组

let defaults = NSUserDefaults.standardUserDefaults()
defaults.setObject(itemList, forKey: "items")
defaults.synchronize()
当您需要从
NSUserDefaults
中提取时,可以这样提取

let defaults = NSUserDefaults.standardUserDefaults()
if let items = defaults.objectForKey("items") as? [String] {
    print(items)
}
或者也可以使用
stringarrayworky

if let items = defaults.stringArrayForKey("items") {
    print(items)
}
有关
NSUserDefaults
的更多详细信息,请阅读此

编辑:问题是您试图在Sting数组中添加
[String]
对象,这是不可能的,如果您想合并两个数组,请这样编写

if let items = defaults.stringArrayForKey("items") {
    self.itemList = self.itemList + items
}

我试图将项附加到itemList,但它说无法将“[String]?”类型的值转换为预期的参数类型“String”我不知道我应该做什么如果你不介意的话,我有另一个引号,如果我单击了特定的单元格,我需要该单元格的标题作为第二个视图控件HelpCome mate的标题,快乐编码:)你能用你的导航代码添加新帖子吗?这将帮助我了解你尝试了什么。不明白你想要什么,也没有导航代码,如果你添加新帖子就更好了。我试图将项目附加到itemList,但它说无法转换“[String]类型的值”?'对于预期的参数类型'String'我不知道我应该做什么如果你不介意的话,我有另一个引号,如果我单击了特定的单元格,我需要该单元格的标题作为第二个视图控件的标题HelpCome mate,快乐编码:)你能用你的导航代码添加新帖子吗,这将帮助我了解你尝试了什么。不明白你想要什么,也没有导航代码,如果你添加新帖子就更好了。