我有一个通过WindowManager.addView(ImageView, WindowManager.LayoutParams)添加的ImageView。我想在屏幕上显示ImageView时对其进行动画处理,但当我在addView()方法之后调用ImageView.startAnimation(Animation)时,它似乎不会进行动画处理。下面是我的代码。
image = new ImageView(context);
image.setImageResource(R.drawable.image);
image.setAlpha(180);
WindowManager.LayoutParams params = new WindowManager.LayoutParams(WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY, 0, PixelFormat.TRANSLUCENT);
windowManager.addView(image, params);
image.startAnimation(AnimationUtils.loadAnimation(getContext(), R.anim.grow));这是grow.xml
<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale android:fromXScale="0"
android:toXScale="1"
android:fromYScale="0"
android:toYScale="1"
android:pivotX="50%"
android:pivotY="50%"
android:duration="350"/>
<alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="350" />
</set>图像只是简单地出现在窗口中,而不是动画,有人知道如何让图像动画吗?
发布于 2013-06-29 00:59:04
如果决定使用windowAnimations字段,则指定的常量必须是系统资源;它不能是应用程序资源,因为窗口管理器无权访问应用程序。参见documentation)。
https://stackoverflow.com/questions/10539632
复制相似问题