【问题标题】:App inventor 2-Showing multiple API results [closed]应用发明者 2-显示多个 API 结果 [关闭]
【发布时间】:2014-11-26 16:39:37
【问题描述】:

我尝试访问的 API 结果有多个结果。例如,现在我只能输出一个名称的结果。我哪里错了?有什么建议么?我只是在寻找指导。

我的 API 结果和测试项目: https://groups.google.com/forum/#!category-topic/mitappinventortest/specific-programming-issue/9wfswNmhszo

【问题讨论】:

    标签: api google-api app-inventor


    【解决方案1】:

    将 JSON 结果转换为列表列表,然后循环遍历提供结果的内部列表之一。它还有助于使用 Do it 来调试您的块...

    在测试中我使用了 3 元素 JSON 结果,因此结果列表中只有 3 个名称。

    编辑:将结果分配给不同标签的解决方案

    【讨论】:

    • 如果我想为每个 Label#.text 输出 1 个结果,我会将索引更改为 1 吗?示例将 3 个结果输出到 Label1.text、Label2.text、Lablet3.text。索引号的意义何在?
    • 是的,您可以这样做,只需使用高级标签块。但是,您不能动态创建组件,您必须创建之前可能需要的标签。看一个例子,它使用了高级按钮块here
    • 从上面的示例中,我在运行时遇到错误:选择列表项:尝试获取长度为 3 的列表的第 4 项:(com.google.appinventor.components.runtime.Label @431260a0 com.google.appinventor.components.runtime.Label@43128b48 com.google.appinventor.components.runtime.Label@4312a948) --- 当我选择“执行”时,我看到选择列表项不能接受参数。我相信这将是 .JsonDevode jsonText。我将尝试不同的方式,但我只是想让你知道。
    • 是的,我没有添加数据验证。如果你只有 3 个标签,如果你尝试分配第 4 个值,你会得到一个错误,只需添加一个 if 语句:if index <= length of list (list) then set label.Text ...
    猜你喜欢
    • 1970-01-01
    • 2014-12-21
    • 1970-01-01
    • 2013-06-20
    • 1970-01-01
    • 2013-08-13
    • 2016-04-20
    • 1970-01-01
    • 2021-09-28
    相关资源
    最近更新 更多