Activity的onCreate()上的长时间操作

时间:2011-01-10 12:41:14

标签: android progressdialog

我有一个Activity,它从远程服务器检索信息并将其显示在TableLayout中。 从服务器检索信息的函数有自己的超时,超过超时时抛出异常。

现在,当加载活动时,我希望触发该函数,并在函数工作时显示progressDialog,并在函数完成工作时被隐藏,或者抛出超时异常。< / p>

问题:我已将上述所有功能的代码放在onCreate()函数中。仿真器屏幕上没有显示任何内容,因为onCreate()函数尚未运行...

我也尝试将代码放在onStart()函数中......同样不需要的结果......

我正在尝试避免使用线程,因为该功能需要许多线程无法访问它们的变量......

我如何实现想要的行为?

感谢。

2 个答案:

答案 0 :(得分:6)

答案 1 :(得分:3)

  • 创建一个实现Runnable的类,并将所有加载逻辑放在那里。完成后调用活动中的一个函数(比如onFinished(params...)
  • 创建用户界面Handler并获取处理程序以更新onFinished(params...)
  • 中的用户界面
  • onCreate中创建一个帖子并在那里开始调用您的Runnable。