1

在 UItextfield 中检测用户输入以调用地点 API 以作为用户类型的建议的最佳方法是什么?目前我的做法是,在 3 个字母之后,我为每个字母输入调用地点 API。但如果用户输入 4 到 5 个字母,应用程序很快就崩溃了,可能是因为网络过多或其他原因。

以 ios 中的谷歌地图应用或谷歌搜索应用为例。他们如何决定在什么时候调用 api 来显示建议的结果?有时用户打字速度很快,有时他们一个字母一个字母地打字。

如果我的问题很愚蠢,请道歉。

ios自动完成搜索

4

2 回答 2

1

请参阅 Google https://developers.google.com/places/ios-api/autocomplete的此选项。我还没有尝试过,也许它可以帮助。

于 2016-02-22T20:34:52.600 回答
1

没有看到您的代码很难确定,但我怀疑崩溃是由更新非 UI 线程中的 UI 控件引起的。

正如您所发现的,根据用户类型发出请求(发出太多请求、请求无序返回等)时有一些微妙之处。考虑使用 Google Places iOS SDK 中的GMSAutocompleteFetcher类,它会自动处理这些问题。

于 2016-02-22T23:11:48.790 回答