首页 > 解决方案 > 自定义视图 Android 上的动画

问题描述

我创建了一个自定义视图显示如下 自定义视图

我想在用户单击每种颜色时向元素添加动画,颜色应该弹出并弹出

自定义视图代码的一部分

override fun onDraw(canvas: Canvas?) {
    super.onDraw(canvas)

    // draw elements
    for(i in 0..5){
        drawElementOrCursor(canvas,cXArray[i]!!,cYArray[i]!!,elementRadius!!,colorArray[i]!!)
    }

    // draw cursor
    drawElementOrCursor(
        canvas,cXArray[0]!!,
        (elementCursorSize!!/2)+8+elementSize!!,
        elementCursorRadius!!,
        colorArray[0]!!)

}

private fun drawElementOrCursor(canvas: Canvas?,cX: Int,cY: Int,radius: Float,color: Int){
    paint.color = color
    paint.style = Paint.Style.FILL

    canvas?.drawCircle(cX.toFloat(),cY.toFloat(),radius,paint)
}

标签: androidandroid-animationandroid-custom-view

解决方案


您可以使用ObjectAnimator来完成。

为您的对象定义一个特定参数并使用此处提供的动画插值器为其设置动画

例如,我在这里做了:LevelProgressBar


推荐阅读