您的位置:首页 > 移动开发 > Android开发

记一次小白之路使用AndroidViewAnimations 安卓抖动动画

2018-09-29 17:49 537 查看

首先我要实现的是类似于这种动画

 

参考过得文章:https://www.jianshu.com/p/7d262563edda

我是在这篇文章的评论中看到两位大佬的对话中,看到了AndroidViewAnimations。

Github地址:https://github.com/daimajia/AndroidViewAnimations

1:添加依赖

在项目的gradle中

[code]dependencies {
compile 'com.android.support:support-compat:X.X.X'
compile 'com.daimajia.easing:library:2.0@aar'
compile 'com.daimajia.androidanimations:library:2.3@aar'
}

这里的版本号用你

[code]com.android.support:appcompat 使用的版本即可。

注:1.在这可能会遇到 Could not resolve com.android.support:appcompat-v7 的问题,你去settings->Build,Execution,Deployment->Gradle,取消“offline work”的勾选,让studio去下载即可。注意后期最好在改回来,这可能会导致运行项目时gradle build running 很久.

           2.有些最新android studio可能会强制使用implementation,这里你用 compile Sync Now下载完后把compile改为implementation即可。

可能有些由于网络原因的你下载会很困难,这个请自行百度即可。

 

2:使用

[code]YoYo.with(想要使用的动画mode)
.duration(持续时间)
.repeat(持续次数)
.pivot(YoYo.CENTER_PIVOT, YoYo.CENTER_PIVOT)
.interpolate(new AccelerateDecelerateInterpolator())
.withListener(new Animator.AnimatorListener() {
@Override
public void onAnimationStart(Animator animation) {

}

@Override
public void onAnimationEnd(Animator animation) {
}

@Override
public void onAnimationCancel(Animator animation) {

}

@Override
public void onAnimationRepeat(Animator animation) {

}
})
.playOn(想要使用动画的按钮view);

 

注:如果想要添加动画 在中间抖动的话只设置.pivot(YoYo.CENTER_PIVOT, YoYo.CENTER_PIVOT) 是不行的,还要设置

[code]@Override
public void onWindowFocusChanged(boolean hasFocus) {
if (hasFocus) {
rope = YoYo.with(Techniques.FadeIn).duration(时间).playOn(控件);// after start,just click mTarget view, rope is not init
}

ps:部分手机可能出现抖动后留有屏幕残留情况,可能是屏幕渲染问题 使用invalidate()可以解决

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: