Android 动画类与画布绘制
我总是想知道,什么时候你会使用动画类,而不是使用画布(以及通过代码加载位图等) 是否有经验法则或具体优势/劣势?我总是选择动画,因为我发现它都准备好了,而且更简单,但我不确定我是否错过了advantaesAndroid 动画类与画布绘制,android,Android,我总是想知道,什么时候你会使用动画类,而不是使用画布(以及通过代码加载位图等) 是否有经验法则或具体优势/劣势?我总是选择动画,因为我发现它都准备好了,而且更简单,但我不确定我是否错过了advantaes 谢谢通常的动画是用于查看的 Canvas适用于需要具有Surfaceview类硬件的游戏。 至少从我的观点来看。你需要理解视图角色和动画角色之间的区别。视图用于捕获某些数据的快照并进行渲染。当然,数据可能会快速更改,视图可能经常需要重新绘制,但一旦绘制完成,视图的状态应该是有效的,直到其数据或
谢谢通常的动画是用于查看的
Canvas
适用于需要具有Surfaceview
类硬件的游戏。
至少从我的观点来看。你需要理解视图角色和动画角色之间的区别。视图用于捕获某些数据的快照并进行渲染。当然,数据可能会快速更改,视图可能经常需要重新绘制,但一旦绘制完成,视图的状态应该是有效的,直到其数据或状态更改为止 动画是一种方法,通过该方法可以定义一组链接或渐进式更改,这些更改应该对视图进行更改,以便从开始状态到结束状态。除此之外,还有不同类型的动画。您可以制作一个动画,按照您的建议,从一个集合中快速连续地一次绘制一个位图。您还可以拥有随时间改变视图属性的动画,以获得动态效果 编辑
因此,为了回答您的问题,如果您想“滑动视图”,您可能只需要在ImageView上设置translation属性的动画即可。扩展动画类可以节省创建动画时间帧(处理程序、可运行程序等)的时间。您仍然可以将其与Canvas DrawingHMM一起使用。有关于如何扩展动画的链接吗?我通常只是直接使用类通过覆盖applyTransformation方法来扩展动画类非常感谢您的评论。我想我错过了措辞,也许是我的问题,或者只是我缺乏理解。我的问题是,如果你有一个你想要移动的am图像。你会使用“平移动画”还是使用“绘制方法”以及“绘制和画布”。。等等?@Snake请参见编辑。但看起来你还是有点误会。您真正想要自己在画布上设置动画的唯一场景是,如果您有一个绘制循环,或者如果您需要做一些简单视图无法完成的事情。否则,视图层次就是绘制循环。