android - 动画师和动画有什么区别?

标签 android android-animation

看起来都像 AnimationsAnimators允许我对对象的属性(位置、不透明度、比例、旋转等)进行动画处理,但我很难区分两者的用例。我什么时候应该使用动画师而不是动画,反之亦然?

最佳答案

Animations 是旧版本的 Animators。动画师在 3.0 中引入,以帮助克服动画的一些缺点。

Animations 只改变对象的视觉表现。如果您只是更改不透明度,这很好,但在您平移、旋转或缩放对象时会导致问题。在Animators之前的过去,如果你翻译了对象,你必须用新的坐标重新布局。根据对象移动的位置,这可能会相当困难。

另一方面,动画师会改变对象的物理属性。这意味着如果您将 View 移动到新位置,触摸坐标将映射到新位置,而无需任何其他干预。

就个人而言,除非我在 API 2.3 或更低版本上进行开发,否则我不再使用动画。值得庆幸的是,这已不再是一个问题。还有一些旧的类仍然使用动画 API,尤其是在使用 xml 资源时,例如 android.support.v4.app.FragmentTransaction 类(普通的 FragmentTransaction而是支持动画师)。

附带说明,项目 NineOldAndroids旨在模仿 Animator 的功能,但使用动画,因此您可以制作可以一直运行到 1.6 的应用程序。

关于android - 动画师和动画有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28220613/

相关文章:

Android getTextBounds 尾随空格处理(也与 AndEngine Font.getStringWidth 相关)

java - 如何让滚动条平滑滚动?

android - 用于在 Android 中循环列表以获取权限列表

java - 如何复制 Android 的股票相机方向变化

android - 用代码替换一个 View

android - 如何剪辑过渡动画以仅在 subview 中绘制?

android - 使用属性动画缩放 WebView

android - 如何创建转轮控件?

java - NineOldAndroids 动画不适用于 API > 10

android - 如何为导航栏图标设置边距?