我是Android编程新手。所以,我试图在异步任务中从互联网上下载文件并显示进度对话框,直到下载完成。但是如果我在两者之间切换我的应用程序,比如我打开另一个应用程序,进度对话框就会消失。
这是我用来显示进度对话框的代码
progressDialog.setIndeterminate(false);
progressDialog.setCancelable(false);
progressDialog.setMessage("Backing Up...");
progressDialog.setMax(100);
progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
progressDialog.show();
我在这里做错了什么?
答案 0 :(得分:0)
首先如果您正在使用asynctask它在UI线程上运行,那么您必须从主页按钮切换它将您的应用程序放在暂停上,您可以覆盖onPause和onResume方法
答案 1 :(得分:0)
我通过在代码中添加这些方法解决了这个问题。
@Override
public void onDestroyView()
{
if (progressDialog != null && getRetainInstance())
progressDialog.setDismissMessage(null);
super.onDestroyView();
}
@Override
public void onSaveInstanceState(Bundle outState) {
// TODO Auto-generated method stub
super.onSaveInstanceState(outState);
}
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setRetainInstance(true);
}