【问题标题】:A big tableview from SQL with filter - what's the most efficient way?带有过滤器的 SQL 的大表视图 - 最有效的方法是什么?
【发布时间】:2013-05-18 22:39:05
【问题描述】:

我一直在尝试使用 tableviews 研究 SQLite,但我正在努力寻找一种处理大量数据的好方法——而且我似乎也没有在网上找到任何好的参考资料。 我有一个邮政编码数据库(4582 行),我需要加入其他表才能正确使用它。我不确定如何正确执行此操作,但是在设备上创建所有行的对象需要很长时间,并且应用程序变得缓慢且无响应。

起初我以为我可以实例化 50-100 个对象并在滚动时加载更多对象,但是当他们尝试过滤列表时,这会适得其反,或者可能不会?我希望用户能够搜索表格中的任何行和文本,而不仅仅是邮政编码。

有什么好的想法、提示或例子可以说明从哪里开始?

【问题讨论】:

    标签: ios objective-c


    【解决方案1】:

    【讨论】:

    • 谢谢。虽然这不能完全解决我的问题,但使用 FMDB 似乎是个好主意!我什至从未听说过它,但这似乎比自己做这件事要容易得多。我会调查一下,并尽快更新这个帖子。
    【解决方案2】:

    首先,您应该在后台线程上运行检索数据的代码。在 StackOverflow 或 Google 中搜索 Grand Central Dispatch 示例。

    其次,一旦您将数据全部放在主 UI 线程上的数组中,您或许应该使用 NSSortDescriptor 对数据进行排序。再次检查 StackOverflow。

    第三,为了搜索表视图,再次检查 StackOverflow。阅读有关如何利用搜索栏及其代理的信息。

    最后,UITableView 在渲染单元格或处理大量数据时非常高效。它是这样建造的。我只关心获取结果。如果您正确实现了表格视图委托方法,您的表格应该可以正常滚动。

    【讨论】:

    • 感谢您的回复。我想我需要结合使用这些解决方案。首先,使用 FMDB(这似乎比常规 SQLite 更容易)从 SQL 中提取数据,然后阅读您的提示。一旦我调查了这个,我就会回来。再次感谢您的回答。
    猜你喜欢
    • 1970-01-01
    • 2021-07-07
    • 2017-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多