UITextField从大型数据库自动建议

时间:2010-09-06 21:50:26

标签: iphone sqlite uitextfield autosuggest

我正在尝试为UITextField添加建议。它们在文本字段下方显示为UITableView,根据用户输入的内容显示一些条目(例如Google Suggest)。

我到目前为止尝试的唯一方法是从内部SQLite数据库中选择。这可行,但由于数据库非常大(大约35000个条目),因此速度非常慢。每次键入内容时,应用程序会在显示新建议之前冻结4或5秒。所以我猜这种方法并不是最好的。

我正在考虑将所有内容映射到NSDictionary中,但我担心该表太大(大约1.5MB)并且永久保留NSDictionary会非常耗费内存。

你们认为最好的是什么?

1 个答案:

答案 0 :(得分:0)

您是否考虑过使用NSThread创建将由表视图使用的数组? (尽管如此,不要做任何UIKit通话)。如果你在主线程上运行它,它会慢一点,特别是因为你的数据库很大。

如果你不知道NSThread是如何工作的,请查看这个很棒的教程:http://www.xprogress.com/post-36-threading-tutorial-using-nsthread-in-iphone-sdk-objective-c/