Android中有哪些种类的动画技术?

12

在Android中有哪些种类的动画技术?

你能告诉我一些关于动画技术的示例代码和教程吗?

注意:文档中的Tween动画和Frame动画是不够的...

1个回答

26

除了(相当痛苦的)帧/补间动画之外,还有布局动画、视图动画和转换动画。当元素显示时,布局动画会触发,无论是在初始活动布局还是在将视图设置为可见时,而转换动画则在启动新活动时触发。标准视图动画是可以在每个视图/布局基础上触发的灵活动画,但它们需要更多的工作(除XML定义外,Activity和Layout动画通常只有一行代码)。

还有一些有用的类,如ViewFlipper,可以简化一些动画操作。检查附带SDK的Android API Demos应用程序(文档在此处)。易于使用的视图动画在此类中,转换动画在此类中,更多复杂的示例在此处(2.0 API演示应用程序中有一个布局动画示例,但我无法在在线文档中找到它)。还要检查演示中的XML文件,在res/anim中有许多好的示例,尽管文档中的动画XML规范有点空洞。

AnimationUtils类也可以提供很多帮助。通过Android系统源代码进行快速grep应该可以为上述所有内容提供一些出色的工作材料。这些资源应足以帮助您入门;祝你好运!

附录(5/2011):还有(仅限3.0+)属性动画系统,非常酷,因为您可以使用它来对自定义视图上的任意属性进行动画处理;除非您正在编写3.0特定的应用程序,否则需要等待才能使用它。


1
如果你的目标版本低于3.0,请查看优秀的NineOldAndroid库。http://nineoldandroids.com/ - irwinb
1
当然。但要注意:据我所知,无法使用旧系统伪造的任何属性动画都将被忽略,即使有些动画可以模拟,使用旧系统兼容转换也会显得不太优雅(尤其是调整视图大小周围内容的调整动画-- 这仅是旧系统实现的限制,它仅更改视图的绘制而不是实际尺寸)。 - Yoni Samlan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接