在自定义视图中使用animatedVectorDrawable

时间:2017-01-07 11:05:17

标签: android android-vectordrawable

我知道我们可以在画布上绘制这样的可绘制矢量:

  vectorDrawable.draw(canvas);

但是可以在自定义视图中使用animatedVectorDrawables吗?

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

是的,这是可能的,并且看起来您的代码片段可以使用。确保设置边界并在可绘制对象上调用start()方法以启动动画。

class MyCustomView : View {

  lateinit var animVectDrawable: AnimatedVectorDrawable

  fun startAnim() {
    animVectDrawable.setBounds(left, top, right, bottom)
    animVectDrawable.start()
    shouldDrawAnim = true
  }

  override fun onDraw(canvas: Canvas) {
    super.onDraw(canvas)
    if (shouldDrawAnim) {
      animVectDrawable.draw(canvas)
    }
  }
}