pkc*_*456 4 nsuserdefaults uitableview nsindexpath ios swift2
我想保存NSIndexPath
的NSUserDefaults
,但有以下异常: -
尝试将非属性列表对象{length = 2,path = 0 - 12}设置为键LastSelectedIndeX的NSUserDefaults/CFPreferences值
我的代码: -
let selectedIndexPath = tableView.indexPathForSelectedRow
NSUserDefaults.standardUserDefaults().setObject(selectedIndexPath, forKey: "lastSelectedIndex")
NSUserDefaults.standardUserDefaults().synchronize()
Run Code Online (Sandbox Code Playgroud)
那么如何保存NSIndexPath
以便以后可以在另一个视图控制器上使用它.
Kir*_*odi 12
您无法直接在NSUserDefault中保存indexPath.您可以在NSUserDefault中存储NSArray,NSDictionary,NSNumber,NSString和NSDictionary.
存储IndexPath使用NSKeyedArchiver
:
let data = NSKeyedArchiver.archivedDataWithRootObject(selectedIndexPath)
NSUserDefaults.standardUserDefaults().setObject(data, forKey: "indexKey")
Run Code Online (Sandbox Code Playgroud)
获取IndexPath使用NSKeyedArchiver
:
let data1 = NSUserDefaults.standardUserDefaults().objectForKey("indexKey") as? NSData
let indexP1 = NSKeyedUnarchiver.unarchiveObjectWithData(data1!) as! NSIndexPath
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1458 次 |
最近记录: |