Android-当某个操作由另一个线程完成时显示进度条
如何阻止UI线程执行任何操作,并在满足特定条件之前仅显示进度条。 例如,我有一个初始化为null的列表,我们称它为list。我在UI中启动另一个线程来初始化它的值,这大约需要10秒。如何在列表初始化之前阻止UI线程显示进度对话框Android-当某个操作由另一个线程完成时显示进度条,android,android-asynctask,progressdialog,Android,Android Asynctask,Progressdialog,如何阻止UI线程执行任何操作,并在满足特定条件之前仅显示进度条。 例如,我有一个初始化为null的列表,我们称它为list。我在UI中启动另一个线程来初始化它的值,这大约需要10秒。如何在列表初始化之前阻止UI线程显示进度对话框 // Initially List list = null; // Display progress bar until certain condition is met while(list == null){ // Display progress dia
// Initially
List list = null;
// Display progress bar until certain condition is met
while(list == null){
// Display progress dialog
}
我认为AsyncTask可以工作,如果我们要求AsyncTask更新列表等等,那么另一个线程如何做呢。我试图简化这个问题。您需要在mainActivity中创建一个公共方法,以examble yourcallback()命名 您可以实例化回调方法中progressbar所需的所有对象,而不是实例化OnCreate mainActivity中的所有对象 yourcallback() 你的回电 现在需要创建AsyncTask的扩展,在其中声明一个基本方法构造函数 像这样
privte Activity mainObj;
public TestAsyncTask(Context context, Activity mainact ) throws Exception {
mainObj=mainact
your code
}
当任务自然终止类AsyncTask调用onPostExecute方法时
protected void onPostExecute(Long result) {
mainObj.yourcallback();
}
希望这有帮助