巨大的速度差异将iPhone模拟器上的核心数据记录加载到iPhone 4

时间:2011-06-28 15:49:15

标签: objective-c ios cocoa-touch core-data ios-simulator

我正在使用Core Data开发一个数据驱动的应用程序。我在许多UITableView s中显示SQLite数据库中的表。我的一张桌子有> 15,000条记录。

当我加载此表时,需要<1秒(通常在.933标记附近)加载到屏幕上。但是,当我部署到iPhone 4时,同一个表大约需要10秒才能加载。

它大概在12秒左右,但是我改变了我获取的字段,我取的记录数量,我甚至涉足多线程,但这是我可以剃掉的所有时间。

我在考虑将fetch的批量大小设置得相当低;但是,我的应用程序使用了sectionIndexTitlesForTableView:titleForHeaderInSection:方法中的索引,因此我不知道如何在不对这些方法产生连锁效应的情况下正确完成它。

如果有人有任何关于将数据加载到表格视图的建议或提示,那就太棒了。

1 个答案:

答案 0 :(得分:2)

您需要了解您的模拟器是以您计算机的CPU功率运行的。我在某处读过模拟器通常比实际手机快16倍,因此会有差异。

您是否考虑过进行无限滚动?检查TTTableFooterInfiniteScrollView项目中的Three20