【问题标题】:TextField Autocompletion with JSON Response带有 JSON 响应的 TextField 自动完成
【发布时间】:2012-10-08 13:27:09
【问题描述】:

我想要什么:

我想在我的应用程序中使用自动完成文本字段。由于我的数据来自网络服务,我想使用 JSON 响应执行“自动完成”。

我知道的:

我知道首先我必须从 Web 服务中获取数据。然后我需要解析它并用解析后的数据填充数组,然后我可以使用该数组来执行自动完成。

问题:

我不知道如何发送请求以获取用户在文本字段中键入的每个“前缀”的 JSON 数据(意味着我在键入期间需要 JSON 数据)。我知道如何独立执行“JSON 解析”和“文本字段的自动完成”,但不知道“带有 JSON 响应的文本字段自动完成”。我尝试了很多来找到关于这个的答案,但我失败了。所以请帮助我...

我正在使用doautocompletetextfield 执行“文本字段自动完成”

对此问题的更好建议将不胜感激。

任何解决方案?

【问题讨论】:

    标签: iphone ios xcode json autocomplete


    【解决方案1】:

    您可以像在 api 示例中那样使用线性搜索,也可以使用 NSPredicate 在您的 autoCompleteArray 中进行快速搜索。

    根据您的问题,您将首先获取 json 数据,然后您需要将 json 中的相关数据保存到某个数组中,然后您可以使用此 api 自动完成文本字段中的文本。

    但我对您的这种说法感到困惑:“我不知道如何发送请求以获取用户在文本字段中键入的每个“前缀”的 JSON 数据。 1)你想在打字时从网络服务获取json数据吗? 2) 或者你想在输入时从 json 字典中获取数据?

    如果您想使用选项 (1),我认为这将是解决问题的不好方法。 如果您想使用选项(2),那么您需要解析 json 并提取您感兴趣的数据并将其保存在数组中。然后根据该数组的内容进行自动完成。

    【讨论】:

    • 感谢您的回复。我想选择您在回答中提到的第一个选项。我知道这是一个糟糕的选择。但是我在 JSON Parsing 中有“世界城市名称”作为响应。因此,如果我选择选项 2,则需要在数组中处理大量响应数据。我害怕这可能会导致应用程序崩溃。所以请给我一些相关的答案,或者如果你有任何其他的解决方案......希望你能理解我的问题。
    • 一种解决方案可以是: 1- 发送一个异步获取请求,您将在其中发送您输入的文本即前缀作为获取查询参数。 2-您需要在服务器上实现搜索,它将根据您输入的前缀返回 json 响应。 3-然后你将json数据的结果提供给你的自动完成文本数组......这个解决方案需要像谷歌搜索引擎一样在服务器端快速搜索:)
    • 是的,你是对的......这不是解决方案。所以我在想关于那个问题的一些不同的东西。在这期间,我遇到了另一期“处理多个 JSON 响应”。由于我没有任何使用 Web 服务的经验,我不知道如何解决这个问题。因此,如果您能给我提供一些可以收集 JSON 数据并将它们存储在数组中的自定义类的链接,我将非常感谢您...请立即回复。
    • 感谢 iMemon 的解释和时间。我研究了您的解释并设法解决了问题。
    猜你喜欢
    • 2010-12-08
    • 2012-07-31
    • 1970-01-01
    • 2015-06-01
    • 1970-01-01
    • 2011-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多