如何在android中简单地为视图设置动画
Posted
技术标签:
【中文标题】如何在android中简单地为视图设置动画【英文标题】:How to simply animate views in android 【发布时间】:2014-09-06 15:00:18 【问题描述】:我一直在浏览网络以及 android 开发人员指南,但找不到任何简单的方法来按我想要的顺序为我的视图设置动画。 我希望能够执行几个这样的动画
yourView.animate().xBy(100).setDuration(500);
yourView.animate().alpha(0).setDuration(500);
yourView.animate().whateverIwannaDo(...).setDuration(...);
...
每个动画之间有(或没有)等待时间,并且不必使用 AnimatorSet 或 AnimationSet(即使在阅读开发者指南后我也无法理解):/
如果没有办法这样做,那么是否有任何明确的指南可以逐步解释如何使用 AnimatorSet 等等。
我希望你们能容忍我的问题。
提前致谢。
【问题讨论】:
【参考方案1】:我鼓励您使用NineOldAndroid。它是一个允许在所有版本的 Android 平台上使用 Honeycomb 动画 API 的库。
AnimatorSet set = new AnimatorSet();
set.playTogether(
ObjectAnimator.ofFloat(myView, "rotationX", 0, 360),
ObjectAnimator.ofFloat(myView, "translationX", 0, 90),
ObjectAnimator.ofFloat(myView, "scaleX", 1, 1.5f),
ObjectAnimator.ofFloat(myView, "alpha", 1, 0.25f, 1));
set.setDuration(5 * 1000).start();
要使用这个库,您有三个选择:
使用gradle
,在您的 build.gradle 配置文件中:
buildscript
repositories
mavenCentral()
dependencies
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.2+'
dependencies
compile 'com.nineoldandroids:library:2.4.0'
使用maven
:
<dependency>
<groupId>com.nineoldandroids</groupId>
<artifactId>library</artifactId>
<version>2.4.0</version>
</dependency>
另外,您可以将其作为dependency jar 添加到您的项目中
【讨论】:
当然,这正是我想了解的。 “ObjectAnimator.ofFloat”部分。现在我很好。那么如果我想使用这个库,我该怎么办?以上是关于如何在android中简单地为视图设置动画的主要内容,如果未能解决你的问题,请参考以下文章
如何正确地为隐藏在 UITableViewCell 中的 UIStackView 设置动画?