2011-09-06 69 views
6

如果我要求进步,我当时的主要活动对话框像这样按预期显示:SetProgressBarIndeterminateVisibility缺乏了解

  requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); 
    setProgressBarIndeterminateVisibility(true); 

但如果我设置的知名度,“假”,然后重新设置为“真正的“在我想部署它的被调用过程中,没有任何显示。将requestWindowFeature移动到过程会导致异常。我应该怎么做?

回答

9

您只需拨打requestWindowFeature()一次,在onCreate()之前拨打setContentView()。然后,您可以使用setProgressBarIndeterminateVisibility(true|false)来显示或隐藏活动中的任何位置的进度指示器(当然,只要它在UI线程上)。

+0

我还没有声明另一个线程,proc A是从activity的onCreate proc中调用的,而proc B正在尝试使用进度指示器,这是从proc A调用的“onClick”。是否应该这样工作? – SirHowy

+0

只要你不尝试调用'requestWindowFeature()'两次,是的。 –

+0

如何使用它?:'setProgressBarIndeterminateVisibility(true); 尝试{ \t \t spage = CustomHttpClient.myHttpGet(sURL); (getBaseContext(),“无法获取网页”,Toast.LENGTH_SHORT).show();}}。 \t \t e.printStackTrace(); \t} setProgressBarIndeterminateVisibility(false);' – SirHowy