2011-04-13 62 views
5

我试图在我的进行中的通知处于活动状态时,在状态栏中显示与不确定进度栏(不是水平的,而是圆形的)相同的动画图形。在Android上的状态栏中显示不确定的进度条

我试图找到与不确定进度条对应的资源ID,但发现它是通过代码动画的。

我尝试将我的Notification实例中的图标ID设置为动画GIF,但状态栏中只显示GIF的第一帧。

如果我将图标ID设置为android.R.drawable.progress_indeterminate_horizo​​ntal,图形完美动画。所以,我的问题是 - 在这种情况下动画是如何实现的?通过iconLevel?我如何设置一个动画图标,而不需要定期自己动画?

任何指针将非常感激。

感谢,

阿克沙伊

回答

5

我找到了我的答案。要求是创建动画列表(说保存为my_spinner.xml)中,用由不同的角度旋转的纺丝器的各种图像从0到360

> <?xml version="1.0" encoding="utf-8"?> 
> <animation-list 
> xmlns:android="http://schemas.android.com/apk/res/android" 
>  android:oneshot="false"> 
>  <item android:drawable="@drawable/spinner_0" 
> android:duration="200" /> 
>  <item android:drawable="@drawable/spinner_60" 
> android:duration="200" /> 
>  <item android:drawable="@drawable/spinner_120" 
> android:duration="200" /> 
>  <item android:drawable="@drawable/spinner_180" 
> android:duration="200" /> 
>  <item android:drawable="@drawable/spinner_240" 
> android:duration="200" /> 
>  <item android:drawable="@drawable/spinner_360" 
> android:duration="200" /> 
> </animation-list> 

而且my_spinner.xml设置为图标ID时通知已创建。

Notification n = new Notification(R.drawable.my_spinner, null, 0); 
+0

此功能已被弃用,任何新的方式来做到这一点? – Rishabh876 2016-03-09 07:23:52

1

您可以通过请求适当的Windows功能和设置条可见显示在标题中的进度条:

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); 
    //any code here 
    setProgressBarIndeterminateVisibility(true); 

然而,它会出现在标题,不在状态栏中。

+0

对不起,我知道标题中的进度条。我的要求是在状态栏中显示它。谢谢! – Akshay 2011-04-14 13:57:19