前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android-Animation 总结(一)

Android-Animation 总结(一)

作者头像
android_薛之涛
发布2018-09-12 10:49:33
3270
发布2018-09-12 10:49:33
举报
文章被收录于专栏:Android-薛之涛Android-薛之涛

鉴于今天是劳动节,鼓励自己整理一下android相关的知识,祝所有劳动者节日快乐。

android 的动画要从3.0为分界线,3.0之前是传统动画,3.0之后出现了属性动画。

传统动画又分为 帧动画(Frame Animation) 和  补间动画(Tween Animation)

补间动画细分为:位移(translate)    缩放 (scale)   渐变(alph)    旋转(rotate)

那我们就从传统动画的Frame Animation 说起吧:

Android-Animation  帧动画

   frame 在英文中的意思有:电影画面,之前的电影播放是通过一帧一帧的胶片记录影像来播放的。所以我们的帧动画也是通过实现准备好的一张张ui图片按顺序进行展示的。

第一步:在res的drawalbe文件夹新建文件,如图:

注释自己看哦!

第二步: 将xml文件用和AnimationDrawable关联。(我们是xml实现也可以代码实现,demo中有此处省略。。。。)

AnimationDrawable mAnimationDrawable =(AnimationDrawable) getResources().getDrawable(

R.drawable.anim_frame);

   //将动画指定到现实的ImageView上。这个Imageview是你自己在Activity中的,你自己指定显示的位置,大小吧。

比如:

然后初始化Imageview 在.setBackground(animationDrawable);即可。

完毕!

Android-Animation  补间动画

首先补间动画有四种:translate  位移

   scale     缩放

   alpha  渐变

  rotate  旋转

话不多说上代码: 对了,我这是xml实现方式,代码实现和它大致一样,set属性就行。

位移动画:

绑定:

//如果代码中定义的话为new translateAnimation=new AlphaAnimation(0.1f, 1.0f);set等属性,其他三种动画都类似

Animation translateAnimation = AnimationUtils.loadAnimation(TweenAnimationActivity.this, R.anim.translate);

iv_translate.startAnimation(translateAnimation);

其他三种也都一样,直接了。

渐变动画

缩放动画

旋转动画

对了,还可以组合使用:

绑定方式都一样:

说一下属性pivotX和pivotX,大家可能有些不太理解,这样说吧,pivoX="50%" 和 pixoY="50%"与pivoX="0%" 和 pixoY="0%"的区别相对于rotate的区别是一个以图片的中心点为圆心旋转,一个以图片的左上角为圆心旋转。

完毕!

demo已上传github,地址:

https://github.com/searchdingding/AnimationDemo

剩下的下次讲。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.05.06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Android-Animation  帧动画
  • Android-Animation  补间动画
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档