2012-09-09 32 views
3

我想使进度条消失而消失。我已经看到了其他应用程序,如着名的SuperSU。当progressBar消失时淡出

但我不知道该怎么做。

编辑: 这里是我做过什么:

AlphaAnimation fadeOut = new AlphaAnimation(1.0f, 0.0f); 
fadeOut.setDuration(500); 
fadeOut.setFillAfter(true); 
progressBar.startAnimation(fadeOut); 
progressBar.setVisibility(ProgressBar.GONE); 

listview.setAdapter(new MyAdapter(getApplicationContext(), listGroups, listChildren)); 

listview.setVisibility(ListView.VISIBLE); 
AlphaAnimation fadeIn = new AlphaAnimation(0.0f, 1.0f); 
fadeIn.setDuration(500); 
fadeIn.setFillAfter(true); 
listview.startAnimation(fadeIn); 

当我开始另一个意图再回去,有时候(这是很奇怪的,这似乎是随机的)进度条的列表视图上方并被冻结(而不是动画)。

没人能帮帮我吗? :( 我尝试这样做:

@Override 
protected void onResume() { 
    super.onResume(); 

    if(listview.getVisibility() == ListView.VISIBLE) 
     progressBar.setVisibility(ProgressBar.GONE); 
} 

它没有工作,我仍然有在ListView中间冻结的进度条...

+0

看到我的编辑上面 – lost17

回答

8
AlphaAnimation fadeOutAnimation = new AlphaAnimation(1.0f, 0.0f);//fade from 1 to 0 alpha 
fadeOutAnimation.setDuration(1000); 
fadeOutAnimation.setFillAfter(true)//to keep it at 0 when animation ends 
myProgressBar.startAnimation(fadeOutAnimation); 
+0

嗡嗡声......现在有些奇怪的事情发生。当我开始另一个意图然后回去时,有时(这很奇怪,它似乎是随机的),进度条在列表视图上方并且被冻结(而不是动画)。 我确实把这一行:fadeOutAnimation.setFillAfter(true) – lost17

3

进度条是View和意见可以使用Animations,您正在寻找AlphaAnimation

创建和启动的动画渐变:

AlphaAnimation fadeOut; 
fadeOut = new AlphaAnimation(1,0); //fade out animation from 1 (fully visible) to 0 (transparent) 
fadeOut.setDuration(1000); //set duration in mill seconds 
fadeOut.setFillAfter(true); 
progresBar.startAnimation(fadeOut);