1

基本上,当在我的应用程序中按下菜单项时,它会将用户带到一个新屏幕。但是现在我想在线获取一些数据(时间/日期),一旦获取数据,这些数据就会显示在页面的某个位置。目前,新屏幕不会加载,直到应用程序获取数据,这会留下几秒钟的暂停,而不是立即加载屏幕,然后在最终获得下载的数据时显示下载的数据。

我尝试使用 onStart 方法,因为它在 onCreate 之后被调用,所以我认为页面将被创建并显示,然后 onStart 被调用但没有发生,它加载之间仍然存在延迟,因为它让数据在线然后显示页面它已经加载了。

我该如何排序?谢谢

4

1 回答 1

1

对于任何类型的加载操作,您都应该考虑将 与AsyncTask结合使用ProgressDialog,以便通知您的用户您正在后台执行某些操作。

onPreExecute()请记住,onPostExecute()您只能在AsyncTask.

因此,在您的情况下,您可能希望在onCreate()Activity 的方法中触发 AsyncTask,在方法中显示 ProgressDialog,onPreExecute()然后显示您的信息并将 ProgressDialog 隐藏在onPostExecute.

要消除您所说的这种滞后几乎是不可能的。所以你最好只是适当地处理它。

希望这有助于回答您的问题。

于 2012-04-13T21:21:59.833 回答