Android 在计算开始时显示进度条,然后在计算结束时隐藏进度条的最佳方式是什么

Android 在计算开始时显示进度条,然后在计算结束时隐藏进度条的最佳方式是什么,android,Android,…不将计算代码放入asyncTask,但进度逻辑可以位于asyncTask中 我在找这样的东西 onCreate(){ ShowProgressBar() ... do many operations .... hidePogressBar() 我曾尝试将进度条放在异步任务中,但它抱怨它属于不同的线程。即使它工作了,一旦它在doInBackground()中启动,也无法阻止它,除非我将它隐藏在onPostExecute()中,这意味着它一启动就会消失,

…不将计算代码放入asyncTask,但进度逻辑可以位于asyncTask中

我在找这样的东西

 onCreate(){
    ShowProgressBar()
    ...
    do many operations
    ....
    hidePogressBar()
我曾尝试将进度条放在异步任务中,但它抱怨它属于不同的线程。即使它工作了,一旦它在
doInBackground()
中启动,也无法阻止它,除非我将它隐藏在
onPostExecute()
中,这意味着它一启动就会消失,因为
doInBackground()中没有任何内容

我该怎么做

我曾尝试将进度条放在异步任务中,但它抱怨它属于不同的线程

张贴日志,我们可以帮助找出哪里出了问题

一旦它在doInBackground()中启动,就无法停止它,除非我将它隐藏在onPostExecute()中,这意味着它一启动就会消失,因为doInBackground()中没有任何内容

如果没有工作要做,那么就没有必要使用
ProgressDialog
。 将您正在做的任何工作放入
doInBackground()
中,然后它将调用
onPostExecute()
,您可以从那里
discover()
您的
ProgressBar


如果
doInBackground
中没有任何内容,请在
onPreExecute()中显示进度条,那么进度条应该代表什么呢?另外,您不应该在
doInBackground
中启动对话框,而应该在
onPreExecute
@simon中启动对话框。它将代表onCreate()中所有内容的加载。您不想将计算逻辑放入
AsyncTask
的原因是什么?这可能有助于我们找到更好的方法。您可以从
AsyncTask
调用
Activity
方法。我建议onCreate()不应该做任何繁重的工作。从oncreate启动一个线程,并在其中执行所有加载和控制进度条。