gpt4 book ai didi

java - 在开始新 Activity 之前等待 HttpRequest 完成

转载 作者:行者123 更新时间:2023-12-02 04:41:54 24 4
gpt4 key购买 nike

所以我正在尝试学习如何创建基本的 Android 应用程序。

我被这个问题困扰了:Home Activity 有一个按钮,按下后会执行两件事:1. 在我的后端服务器上调用 REST-Api。服务器返回 JSON 对象。 JSON 对象映射到 Java 对象。最后它们被添加到静态列表中。

  • 启动一个新 Intent ,启动具有列表布局的 Activity 。OnCreate() 时,ListLayout 会填充步骤 1 中获得的静态 List 中的数据。
  • 问题是步骤 2 无法按预期工作,因为步骤 1 是异步的。因此,步骤 2 在步骤 1 完成之前运行,用来自服务器的数据填充静态列表,从而导致 ListActivity 上显示一个空列表。

    如何等待步骤 1 完成后再启动新 Activity ,以便正确显示数据?

    谢谢。

    最佳答案

    使用AsyncTask

    在方法 doInBackground() 中放置用于执行 API 调用的代码。 API 调用完成后,将调用 onPostExecute() 方法,您可以在其中放置代码以转到下一个 Activity 。

    在此处查看详细指南:https://developer.android.com/reference/android/os/AsyncTask

    关于java - 在开始新 Activity 之前等待 HttpRequest 完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56511429/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com