【发布时间】:2015-05-01 12:36:22
【问题描述】:
我有一个新闻ViewController 和一个TeamViewController。 TeamViewController 包含一个 teamObjects 的 tableView,当被选中时它被添加到数组中。我想将此数组添加到NSUserDefaults 中,以便我可以从NewsController 访问它们,其中包含需要teamObjects 的url 请求。但是我不断得到:
'尝试插入非属性列表对象( “” ) 用于关键团队的
>
如果有比将其存储在 NSUserDefaults 中更好的方法,我愿意接受其他建议
didSelectRowAtIndexPath方法
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
tableView.deselectRowAtIndexPath(indexPath, animated: true)
let team = self.teamArray[indexPath.row] as Team
var removed = false
for (index, value) in enumerate(self.teamSelected) {
if (value == team) {
self.teamSelected.removeAtIndex(index)
removed = true
}
}
if (!removed) {
self.teamSelected.append(team)
}
var userDefaults = NSUserDefaults.standardUserDefaults()
userDefaults.setValue(self.teamSelected, forKey: "teams")
userDefaults.synchronize()
tableView.reloadData()
}
我的对象
class Team: NSObject{
var id: Int!
var name: NSString!
var shortname: NSString!
init(id: Int, name:NSString, shortname: NSString) {
self.id = id
self.name = name
self.shortname = shortname
}
}
【问题讨论】:
标签: ios swift nsuserdefaults