动画系统警报类型视图

时间:2013-07-08 23:34:03

标签: android

是否可以为系统警报类型视图设置动画?如果是这样的话?

我尝试了这个,但它不起作用:

public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    View view = new View(this);
    view.setBackgroundColor(0x33FF0000);
    Animation animation = AnimationUtils.loadAnimation(this, R.anim.blink);
    view.startAnimation(animation);


    WindowManager windowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
    WindowManager.LayoutParams layoutParams = new WindowManager.LayoutParams(-1, -1, 2006, 1336, -3);
    windowManager.addView(view, layoutParams);
}

blink.xml:

<alpha
    android:interpolator="@android:anim/accelerate_decelerate_interpolator"
    android:fromAlpha="0.0"
    android:toAlpha="1"
    android:duration="500"
    android:repeatMode="reverse"
    android:repeatCount="9999999"/>

此代码将视图添加到系统中,但不是动画。

1 个答案:

答案 0 :(得分:10)

我找到了解决方案:

要动画的视图不能直接添加到顶部窗口,因为android的顶部窗口不是真正的ViewGroup。因此必须首先将视图添加到类似FrameLayout的ViewGroup中,然后将此ViewGroup添加到顶部窗口。