Android - 何时在启动新活动时调用REST API

时间:2018-03-13 09:11:11

标签: android rest android-activity

我有Activity AActivity B

A有一个打开B的按钮。

活动B必须显示我调用的API中的一些信息。

问题:当我打开活动时,有一段时间数据为空(我正在等待API的响应),因为我在onViewCreated方法中调用了API。另一方面,如果我在活动A中调用API,我将不得不等待响应才能打开活动B。我的问题是,在新活动开始时,何时调用需要显示数据的API的最佳做法是什么

6 个答案:

答案 0 :(得分:1)

可以采用两种方法,无论哪种方式,您都必须在某种情况下等待

  1. 你可以在第一个活动中调用api,然后将数据传递给 extra到下一个活动

  2. 您可以直接在第二个活动中调用api,因此在后台线程中调用api时可以显示一些进度对话框

答案 1 :(得分:1)

非常常见的用例...... 数据获取需要时间,并且在这几秒钟内(对于差的3G / WIFI),UI似乎是空的。 可能的解决方案是:

  • 在API调用之前使用ProgressBar,并在调用完成时将其关闭。
  • 使用加载状态UI直到获取数据,例如:

enter image description here

答案 2 :(得分:0)

您可以调用api并确保在调用api时启动进度对话框并在获得响应后隐藏进度对话框。这样用户将等待处理响应

答案 3 :(得分:0)

添加进度对话框,在调用API时,通常服务器需要一些时间来提供数据。 隐藏onResponse和onError Response中的进度对话框。在将视图填充到用户之前进行Api调用。

答案 4 :(得分:0)

您可以在活动的 onCreate() onResume()方法中调用您的API。在Activity中调用需要API数据的API是一种很好的做法。但有时这取决于具体情况。

在调用API之前使用 ProgressBar ,并在从API获取数据后关闭

答案 5 :(得分:0)

活动B onResume()中调用Api,并确保添加progressDialog并将其隐藏在响应中。