property animation属性动画设计
2015-09-19 09:24
253 查看
public abstract class BaseEffects { private static final int DURATION = 1 * 700; protected long mDuration =DURATION ; private AnimatorSet mAnimatorSet; { mAnimatorSet = new AnimatorSet(); } protected abstract void setupAnimation(View view); public void start(View view) { reset(view); setupAnimation(view); mAnimatorSet.start(); } public void reset(View view) { ViewHelper.setPivotX(view, view.getMeasuredWidth() / 2.0f); ViewHelper.setPivotY(view, view.getMeasuredHeight() / 2.0f); } public AnimatorSet getAnimatorSet() { return mAnimatorSet; } public void setDuration(long duration) { this.mDuration = duration; } }FadeIn public class FadeIn extends BaseEffects{@Overrideprotected void setupAnimation(View view) {getAnimatorSet().playTogether(ObjectAnimator.ofFloat(view,"alpha",0,1).setDuration(mDuration));}}fallpublic class Fall extends BaseEffects{@Overrideprotected void setupAnimation(View view) {getAnimatorSet().playTogether(ObjectAnimator.ofFloat(view, "scaleX", 2, 1.5f, 1).setDuration(mDuration),ObjectAnimator.ofFloat(view,"scaleY",2,1.5f,1).setDuration(mDuration),ObjectAnimator.ofFloat(view, "alpha", 0, 1).setDuration(mDuration*3/2));}}flipHpublic class FlipH extends BaseEffects{@Overrideprotected void setupAnimation(View view) {getAnimatorSet().playTogether(ObjectAnimator.ofFloat(view, "rotationY", -90, 0).setDuration(mDuration));}}
<span style="font-family: monospace; white-space: pre; background-color: rgb(240, 240, 240);">FlipV </span>
<p>public class FlipV extends BaseEffects{</p><p> </p><p> @Override</p><p> protected void setupAnimation(View view) {</p><p> getAnimatorSet().playTogether(</p><p> ObjectAnimator.ofFloat(view,"rotationX", -90, 0).setDuration(mDuration)</p><p> </p><p> );</p>NewsPaperpublic class NewsPaper extends BaseEffects{@Overrideprotected void setupAnimation(View view) {getAnimatorSet().playTogether(ObjectAnimator.ofFloat(view, "rotation", 1080,720,360,0).setDuration(mDuration),ObjectAnimator.ofFloat(view, "alpha", 0, 1).setDuration(mDuration*3/2),ObjectAnimator.ofFloat(view, "scaleX", 0.1f, 0.5f, 1).setDuration(mDuration),ObjectAnimator.ofFloat(view,"scaleY",0.1f,0.5f,1).setDuration(mDuration));}} RotateBottompublic class RotateBottom extends BaseEffects{@Overrideprotected void setupAnimation(View view) {getAnimatorSet().playTogether(ObjectAnimator.ofFloat(view, "rotationX",90, 0).setDuration(mDuration),ObjectAnimator.ofFloat(view, "translationY", 300, 0).setDuration(mDuration),ObjectAnimator.ofFloat(view, "alpha", 0, 1).setDuration(mDuration*3/2));}} RotateLeftpublic class RotateLeft extends BaseEffects{@Overrideprotected void setupAnimation(View view) {getAnimatorSet().playTogether(ObjectAnimator.ofFloat(view, "rotationY", 90, 0).setDuration(mDuration),ObjectAnimator.ofFloat(view, "translationX", -300, 0).setDuration(mDuration),ObjectAnimator.ofFloat(view, "alpha", 0, 1).setDuration(mDuration*3/2));}}
<pre name="code" class="html">Shakepublic class Shake extends BaseEffects{ @Override protected void setupAnimation(View view) { getAnimatorSet().playTogether( ObjectAnimator.ofFloat(view, "translationX", 0, .10f, -25, .26f, 25,.42f, -25, .58f, 25,.74f,-25,.90f,1,0).setDuration(mDuration)); }}
SideFall
public class SideFallextends BaseEffects{@Overrideprotected void setupAnimation(View view) {getAnimatorSet().playTogether(ObjectAnimator.ofFloat(view, "scaleX", 2, 1.5f, 1).setDuration(mDuration),ObjectAnimator.ofFloat(view,"scaleY",2,1.5f,1).setDuration(mDuration),ObjectAnimator.ofFloat(view, "rotation", 25,0).setDuration(mDuration),ObjectAnimator.ofFloat(view, "translationX",80,0).setDuration(mDuration),ObjectAnimator.ofFloat(view, "alpha", 0, 1).setDuration(mDuration*3/2));}}
SlideBottompublic class SlideBottom extends BaseEffects{@Overrideprotected void setupAnimation(View view) {getAnimatorSet().playTogether(ObjectAnimator.ofFloat(view, "translationY", 300, 0).setDuration(mDuration),ObjectAnimator.ofFloat(view, "alpha", 0, 1).setDuration(mDuration*3/2));}}
SlideLeft
public class SlideLeft extends BaseEffects{@Overrideprotected void setupAnimation(View view) {getAnimatorSet().playTogether(ObjectAnimator.ofFloat(view, "translationX", -300, 0).setDuration(mDuration),ObjectAnimator.ofFloat(view, "alpha", 0, 1).setDuration(mDuration*3/2));}}
SlideRight
public class SlideRight extends BaseEffects{@Overrideprotected void setupAnimation(View view) {getAnimatorSet().playTogether(ObjectAnimator.ofFloat(view, "translationX",300,0).setDuration(mDuration),ObjectAnimator.ofFloat(view, "alpha", 0, 1).setDuration(mDuration*3/2));}}
SlideTop
public class SlideTopextends BaseEffects{@Overrideprotected void setupAnimation(View view) {getAnimatorSet().playTogether(ObjectAnimator.ofFloat(view, "translationY", -300, 0).setDuration(mDuration),ObjectAnimator.ofFloat(view, "alpha", 0, 1).setDuration(mDuration*3/2));}}
相关文章推荐
- OpenCV——PS 滤镜算法之极坐标变换到平面坐标
- OpenCV——PS 滤镜算法之平面坐标到极坐标的变换
- Onvif开发之Linux下gsoap的使用及移植
- 解决编译buildroot过程中linux-.tar.xz: Scheme missing错误
- 架构设计:系统间通信(3)——IO通信模型和JAVA实践 上篇
- 错误: Native library not found! Please copy libbdpush_V2_3.so into your project!
- 架构设计:系统间通信(1)——概述从“聊天”开始上篇
- 常用Linux命令和讲解
- andrid系统的架构
- win8下安装centos7
- windows通过使用xShell远程linux上传文件
- 32位ubuntu14.04手动编译hadoop2.6.0
- Linux系统函数write(strlen、sizeof与write结合使用的区别)
- CentOS6.4下YUM安装MySQL和JDK和Tomcat
- Ubuntu 15搭建下HHVM Nginx环境
- docker mysql 主从配置
- PopupWindow的使用
- Docker 构建Tomcat镜像
- Docker 构建redis镜像
- ubuntu 下使用docker 运行mysql