从文件加载AppState时显示ProgressDialog

时间:2012-07-18 11:46:36

标签: android android-activity state activity-lifecycle

当我的活动被关闭时,我将应用程序状态数据序列化为文件,以便在应用程序被系统杀死时让我有机会重新加载状态。

这种方法(保存和恢复状态)运行正常。但是,有时候,当进程被终止时,根据要加载的数据量,加载状态进程至少需要几秒钟才能完成。

所以,我无法在separeted线程上加载状态,因为如果onLoad上没有数据,我的活动就会崩溃。

所以,我想在加载内容时显示进度对话框,但是,确保只在加载状态进程之后调用Activity的onLoad方法。

有谁知道我怎么能做到这一点?非常感谢。

1 个答案:

答案 0 :(得分:1)

嗯..你可以覆盖onLoad()函数,然后添加一个布尔值来说明你是否正在显示对话框。如果正在显示对话框(布尔值为true),请不要让onLoad()做任何事情;否则,照常进行。这样一旦对话框被解除,你可以再次将布尔值设置为false,如果之后没有默认调用onLoad(),也许你可以手动调用它?这只是一个想法。

换句话说:可以使用AsyncTask显示对话框。在onPreExecute()方法中,将布尔值设置为true,在doInBackground()中执行所需操作,在onPostExecute()中,将布尔值设置为false并调用onLoad()

旁注...你的意思是onCreate()还是onResume()?我实际上没有听说过onLoad(),除非这是你创建的一个函数。