我有Activity
A
和Activity
B
。
A
有一个打开B
的按钮。
活动B
必须显示我调用的API中的一些信息。
问题:当我打开活动时,有一段时间数据为空(我正在等待API的响应),因为我在onViewCreated
方法中调用了API。另一方面,如果我在活动A
中调用API,我将不得不等待响应才能打开活动B
。我的问题是,在新活动开始时,何时调用需要显示数据的API的最佳做法是什么
答案 0 :(得分:1)
可以采用两种方法,无论哪种方式,您都必须在某种情况下等待
你可以在第一个活动中调用api,然后将数据传递给
extra
到下一个活动
您可以直接在第二个活动中调用api,因此在后台线程中调用api时可以显示一些进度对话框
答案 1 :(得分:1)
非常常见的用例...... 数据获取需要时间,并且在这几秒钟内(对于差的3G / WIFI),UI似乎是空的。 可能的解决方案是:
答案 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并将其隐藏在响应中。