我通过ImageView
添加WindowManager.addView(ImageView, WindowManager.LayoutParams)
。我想在屏幕上显示ImageView
时为其设置动画,但在ImageView.startAnimation(Animation)
方法后调用addView()
时,它似乎没有动画效果。这是我下面的代码......
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>
图像只是出现在窗口中而没有动画,是否有人知道如何让图像动画?
答案 0 :(得分:0)
如果您决定使用windowAnimations
字段,则您指定的常量必须是系统资源;它不能是应用程序资源,因为窗口管理器无权访问应用程序。请参阅documentation)。