Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 绘制圆形矩形笔划动画_Android_Kotlin_Canvas_Android Custom View - Fatal编程技术网

Android 绘制圆形矩形笔划动画

Android 绘制圆形矩形笔划动画,android,kotlin,canvas,android-custom-view,Android,Kotlin,Canvas,Android Custom View,目前正在深入画布并绘制自定义视图。我刚刚用这段代码创建了一个带边框的圆形矩形(我的onDraw方法): 我想要实现的是这个边界的动画(像蛇一样的进度)。上一次我做了类似的事情是圆边界动画,其中drawArc在animation对象中动态改变角度,做得非常好。但是,这次我不能使用drawArc,因为需要不同的形状。我附加一个图像,指出动画的开始位置。我正在考虑创建路径对象,但我不知道如何从右下角开始绘制(就在圆角部分之后)。已经有人做过类似的工作了吗 上次(对于圆圈,如前所述)我做了如下操作: c

目前正在深入画布并绘制自定义视图。我刚刚用这段代码创建了一个带边框的圆形矩形(我的
onDraw
方法):

我想要实现的是这个边界的动画(像蛇一样的进度)。上一次我做了类似的事情是圆边界动画,其中
drawArc
animation
对象中动态改变角度,做得非常好。但是,这次我不能使用
drawArc
,因为需要不同的形状。我附加一个图像,指出动画的开始位置。我正在考虑创建路径对象,但我不知道如何从右下角开始绘制(就在圆角部分之后)。已经有人做过类似的工作了吗

上次(对于圆圈,如前所述)我做了如下操作:

canvas.drawArc(rect, START_ANGLE_POINT, angle, false, paint)
还有动画课:

    private inner class CountdownAnimation(private val roundCountdownView: RoundCountdownView): Animation() {

        override fun applyTransformation(interpolatedTime: Float, t: Transformation?) {
            roundCountdownView.angle = 360f * interpolatedTime
            roundCountdownView.requestLayout()
        }
    }
我想实现类似的目标,但在互联网上找不到任何有用的东西。已经找到了,但是我认为通过位图来解决这个问题是过分的。如有任何建议,我将不胜感激。提前感谢!:)

    private inner class CountdownAnimation(private val roundCountdownView: RoundCountdownView): Animation() {

        override fun applyTransformation(interpolatedTime: Float, t: Transformation?) {
            roundCountdownView.angle = 360f * interpolatedTime
            roundCountdownView.requestLayout()
        }
    }