iphone - NSUserDefaults - 保存 scrollView 偏移量

标签 iphone ios xcode cocoa-touch nsuserdefaults

这是我的代码:

-(void)scrollViewDidScroll:(UIScrollView *)scrollView{
    NSLog(@"scrolled!");
    [[NSUserDefaults standardUserDefaults] setFloat:self.mainTableView.contentOffset.y forKey:@"grTableCOy"];
}

如您所见,每次用户滚动时,我都在 NSUserDefaults 中设置了一些值。只是一个问题 - 这有效吗?

NSUserDefaults 是在我每次设置新值时将内容保存到磁盘还是仅在调用同步方法时才保存?

最佳答案

我真的无法谈论您正在做的事情的性能方面。获得明确答案的唯一方法是启动仪器,并在使用和不使用 NSUserDefaults 的情况下测量 ScrollView 的响应。

关于它是否保存的问题?那么,在这种情况下,查看文档应该可以回答这个问题。这是同步方法的一个片段:

Writes any modifications to the persistent domains to disk 
and updates all unmodified persistent domains to what is on disk.

再次重申,确定性能问题的唯一方法是在仪器中进行测量。

祝你好运!

关于iphone - NSUserDefaults - 保存 scrollView 偏移量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13209920/

相关文章:

c++ - 在 XCode 3.xx GDB 中打印 Qt 数据结构(QList、QString 等)

ios - 自动将 dSYM 上传到 Crittercism 时构建失败

iphone - 以编程方式将 UITextField 设置为编辑模式

ios - iPhone 5 在 Xcode 中显示空白

ios - iTunes Connect 中的应用程序图标有奇怪的白边

ios - 使用 DispatchGroup、DispatchQueue 和 DispatchSemaphore 按顺序执行带有 for 循环的 Swift 4 异步调用

UILabel 的 IOS 8 问题?

ios - 快速进行 iOS 单元测试

iphone - iOS 6 自动旋转仅适用于多个 ViewController 应用程序中的 SingleViewController

ios - 如何检查 Storyboard 是否存在于特定的 NSBundle 中