Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.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 - Fatal编程技术网

Android 动画类与画布绘制

Android 动画类与画布绘制,android,Android,我总是想知道,什么时候你会使用动画类,而不是使用画布(以及通过代码加载位图等) 是否有经验法则或具体优势/劣势?我总是选择动画,因为我发现它都准备好了,而且更简单,但我不确定我是否错过了advantaes 谢谢通常的动画是用于查看的 Canvas适用于需要具有Surfaceview类硬件的游戏。 至少从我的观点来看。你需要理解视图角色和动画角色之间的区别。视图用于捕获某些数据的快照并进行渲染。当然,数据可能会快速更改,视图可能经常需要重新绘制,但一旦绘制完成,视图的状态应该是有效的,直到其数据或

我总是想知道,什么时候你会使用动画类,而不是使用画布(以及通过代码加载位图等)

是否有经验法则或具体优势/劣势?我总是选择动画,因为我发现它都准备好了,而且更简单,但我不确定我是否错过了advantaes


谢谢

通常的动画是用于查看的
Canvas
适用于需要具有
Surfaceview
类硬件的游戏。
至少从我的观点来看。

你需要理解视图角色和动画角色之间的区别。视图用于捕获某些数据的快照并进行渲染。当然,数据可能会快速更改,视图可能经常需要重新绘制,但一旦绘制完成,视图的状态应该是有效的,直到其数据或状态更改为止

动画是一种方法,通过该方法可以定义一组链接或渐进式更改,这些更改应该对视图进行更改,以便从开始状态到结束状态。除此之外,还有不同类型的动画。您可以制作一个动画,按照您的建议,从一个集合中快速连续地一次绘制一个位图。您还可以拥有随时间改变视图属性的动画,以获得动态效果

编辑


因此,为了回答您的问题,如果您想“滑动视图”,您可能只需要在ImageView上设置translation属性的动画即可。

扩展动画类可以节省创建动画时间帧(处理程序、可运行程序等)的时间。您仍然可以将其与Canvas DrawingHMM一起使用。有关于如何扩展动画的链接吗?我通常只是直接使用类通过覆盖applyTransformation方法来扩展动画类非常感谢您的评论。我想我错过了措辞,也许是我的问题,或者只是我缺乏理解。我的问题是,如果你有一个你想要移动的am图像。你会使用“平移动画”还是使用“绘制方法”以及“绘制和画布”。。等等?@Snake请参见编辑。但看起来你还是有点误会。您真正想要自己在画布上设置动画的唯一场景是,如果您有一个绘制循环,或者如果您需要做一些简单视图无法完成的事情。否则,视图层次就是绘制循环。