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,快乐编码:)你能用你的导航代码添加新帖子吗,这将帮助我了解你尝试了什么。不明白你想要什么,也没有导航代码,如果你添加新帖子就更好了。