如何在android中显示等待对话框

如何在android中显示等待对话框,android,Android,我的任务很长,需要10/15秒。我想显示一个对话框,或者一个视图或者其他东西,让用户知道“嗨!我为你工作,我是90%” 实际上我有3个布局:currentLayout、progressLayout和resultLayout。从主要活动中,我有一个如下功能: ... setContentView(R.layout.progressLayout ); SomeLongTask(); setContentView(R.layout.resultLayout); ... 但是这个布局从来没有显示出来

我的任务很长,需要10/15秒。我想显示一个对话框,或者一个视图或者其他东西,让用户知道“嗨!我为你工作,我是90%”

实际上我有3个布局:currentLayout、progressLayout和resultLayout。从主要活动中,我有一个如下功能:

...
setContentView(R.layout.progressLayout );
SomeLongTask();
setContentView(R.layout.resultLayout);
...
但是这个布局从来没有显示出来


执行此操作的最佳方法是什么?

您正在用户界面线程中开始长时间的任务。该线程还负责重新绘制UI并处理输入事件。如果对长任务函数进行阻塞调用,UI线程将忙于执行任务,并且用户界面无法更改。Android系统甚至会认为你的应用程序崩溃了,因为它不再对用户输入做出反应


您必须在中启动任务,在doInBackground方法中完成所有繁重的工作,并在onPostExecute方法中更新UI。这样,UI线程将启动任务,然后返回到更新界面和处理用户事件

您正在用户界面线程中启动长任务。该线程还负责重新绘制UI并处理输入事件。如果对长任务函数进行阻塞调用,UI线程将忙于执行任务,并且用户界面无法更改。Android系统甚至会认为你的应用程序崩溃了,因为它不再对用户输入做出反应

您必须在中启动任务,在doInBackground方法中完成所有繁重的工作,并在onPostExecute方法中更新UI。这样,UI线程将启动任务,然后返回到更新界面和处理用户事件