帧动画
程序员文章站
2022-03-01 20:53:39
...
- 帧动画是顺序播放一组预先定义好的图片,类似于电影播放。不同于View动画,系 统提供了另外一个类AnimationDrawable来使用帧动画
帧动画的使用比较简单,但是比较容易引起OOM,所以在使用帧动画时应尽量避免 使用过多尺寸较大的图片。
<?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/test"
android:duration="3000" />
<item
android:drawable="@drawable/g"
android:duration="3000" />
<item
android:drawable="@drawable/d"
android:duration="3000" />
<item
android:drawable="@drawable/e"
android:duration="3000" />
<item
android:drawable="@drawable/f"
android:duration="3000" />
</animation-list>
android:oneshot如果设置成false,会无限循环播放,如果设置成true 只循环一次停止到最后一张
class MainActivity : AppCompatActivity() {
private var root: LinearLayout? = null
private var img: ImageView? = null
@RequiresApi(Build.VERSION_CODES.LOLLIPOP)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
root = findViewById(R.id.root)
img = findViewById(R.id.img)
val ani:AnimationDrawable = getDrawable(R.drawable.animation_drawable) as AnimationDrawable
img!!.setImageDrawable(ani)
ani.start()
}
}