我有一个进度对话框:
ProgressDialog pDialog = ProgressDialog.show(MyActivity.this, "", "Logging In...");
它应该从方法的顶部开始运行,直到结束。这是在授权成功时执行的 block :
if(writeSuccess){
Toast.makeText(getApplicationContext(), "Login Success!", Toast.LENGTH_SHORT).show();
pDialog.dismiss();
setContentView(R.layout.auth);
}
但是 ProgressDialog
不会触发。但是,如果我将其注释掉,它将在 ContentView 切换后触发。有人对这个问题有任何想法或补救措施吗?
最佳答案
使用 ASyncTask做你想做的事。在 onPreExecute 上,创建并显示对话框,在 doInBackground 上进行登录,在 onPostExecute 上关闭之前创建的对话框。
关于android - ProgressDialog 仅在 setContentView() 之后触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7060902/