当我的活动被关闭时,我将应用程序状态数据序列化为文件,以便在应用程序被系统杀死时让我有机会重新加载状态。
这种方法(保存和恢复状态)运行正常。但是,有时候,当进程被终止时,根据要加载的数据量,加载状态进程至少需要几秒钟才能完成。
所以,我无法在separeted线程上加载状态,因为如果onLoad上没有数据,我的活动就会崩溃。
所以,我想在加载内容时显示进度对话框,但是,确保只在加载状态进程之后调用Activity的onLoad方法。
有谁知道我怎么能做到这一点?非常感谢。
答案 0 :(得分:1)
嗯..你可以覆盖onLoad()
函数,然后添加一个布尔值来说明你是否正在显示对话框。如果正在显示对话框(布尔值为true),请不要让onLoad()
做任何事情;否则,照常进行。这样一旦对话框被解除,你可以再次将布尔值设置为false,如果之后没有默认调用onLoad()
,也许你可以手动调用它?这只是一个想法。
换句话说:可以使用AsyncTask显示对话框。在onPreExecute()
方法中,将布尔值设置为true,在doInBackground()
中执行所需操作,在onPostExecute()
中,将布尔值设置为false并调用onLoad()
。
旁注...你的意思是onCreate()
还是onResume()
?我实际上没有听说过onLoad()
,除非这是你创建的一个函数。