使用currentIndex作为NSNumber并在NSUserDefaults中保存NSNumber。
使用currentIndex在NSUserDefaults中存储书签页面
这就是我在NSUserdefaults中保存currentIndex的方法:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setInteger:currentIndex forKey:@"currentIndex"];
[defaults synchronize];
如果这是在NSUserdefaults中保存currentIndex的正确方法,那么如何在NSUserdefaults中检索已保存的currentIndex。
感谢您的帮助。
答案 0 :(得分:4)
首先,setInteger: forKey:
用于存储int
,而不是NSNumber
。如果您要存储NSNumber
,用户setObject: forKey:
。
要检索您存储的数据,请使用objectForKey:
(或integerForKey:
代替,如果您更愿意使用int
)。
答案 1 :(得分:4)
标题说你希望存储一个NSNumber,你应该这样做:
OBJ-C
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:nsnumberObject forKey:@"nsNumberStored"];
迅速
let defaults = NSUserDefaults.standardUserDefaults()
defaults.setObject(nsnumberObject, forKey:"nsNumberStored")
然后获取 NSNumber执行此操作:
OBJ-C
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSNumber *nsNumberFetched = [defaults objectForKey:@"nsNumberStored"];
迅速
let defaults = NSUserDefaults.standardUserDefaults()
defaults.objectForKey("nsNumberStored")
您可以在此处阅读官方文档Class reference
让我知道它是否对你有所帮助。
答案 2 :(得分:0)
你需要做对面的'把它拿回来
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSInteger currentIndex = [defaults integerForKey:@"currentIndex"];