我正在尝试在不同的图像资源之间做动画。因此,我正在使用帧动画。
列表动画.xml
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/music_playing_indicator_1"
android:oneshot="false">
<item android:drawable="@drawable/animation_1" android:duration="500" />
<item android:drawable="@drawable/animation_2" android:duration="50" />
<item android:drawable="@drawable/animation_4" android:duration="50" />
<item android:drawable="@drawable/animation_5" android:duration="50" />
<item android:drawable="@drawable/animation_2" android:duration="80" />
<item android:drawable="@drawable/animation_1" android:duration="150" />
<item android:drawable="@drawable/animation_3" android:duration="600" />
<item android:drawable="@drawable/animation_2" android:duration="250" />
</animation-list>
动画_1 - 5.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<size
android:height="2dp"
android:width="2dp" />
<solid android:color="#ffffff" />
</shape>
我只是将高度从 2dp 调整到 4dp 到 6dp 到 8dp 到 10dp。
动画_1 2dp 动画
_2 4dp 动画_3
6dp 等等。
在我运行动画之后,当然我将 imageview 的背景设置为我的动画列表可绘制对象。
ImageView img = (ImageView) getView().findViewById(R.id.Animation);
AnimationDrawable frameAnimation = (AnimationDrawable) img
.getBackground();
frameAnimation.start();
但这里的问题是动画似乎不是应该的动画。有时它很慢,根本没有动画。
如果我对真实的 .png 文件做同样的事情。不同高度的animation_1 -5.png 完美运行。我现在很困惑。在动画列表中使用形状有什么限制吗?
我使用形状的原因是更容易针对具有不同屏幕尺寸的不同设备等等。
我很感谢任何帮助...
干杯亚历克斯