Android 动画总结
来源:互联网 发布:淘宝开店运营流程图 编辑:程序博客网 时间:2024/06/05 23:45
动画效果是开发中不必可少的东西。去搜索多了那些炫酷的动画效果。忽然觉得有必要整理一下基础的东西。不然时间长了就会丢在曾经的笔记深处,一旦忘记就再也记不起。
而对于安卓动画效果,总体来说分为两种。
视图动画
属性动画
View Animation视图动画:只是实现动画效果,对view本身的属性并没有影响。视图动画包括帧动画以及补间动画。
Property Animation 属性动画:通过动画的变换效果执行改变当前view的属性。
由于电脑较卡,用as敲出效果并运行总是让人想要放弃。索性对着笔记,整理出流程。不再加以实现效果
Frame 帧动画:
app应用场景:页面未加载出来之前的动画效果,GIF图片
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"android:oneshot="false"> <item android:drawable="@drawable/image1" android:duration="200"> </item> <item android:drawable="@drawable/image2" android:duration="200"> </item> <item android:drawable="@drawable/image3" android:duration="200"> </item> <item android:drawable="@drawable/image4" android:duration="200"> </item></animation-list>
1、在res/drawable文件夹下常见帧动画的xml资源文件,代码如上
android:oneshot=”false” 值为false可以播放多次,为true只播放一次
android:duration=”200” 值为毫秒值,延迟时间
2、在activity中获取ImageView控件,调用setBackgroundResource将动画的xml文件设置为ImageView的背景。
3、调用ImageView
Tween补间动画实现
1.透明度的改变淡入淡出 alpha
2.缩放 宽高尺寸 scale
3.平移 rotate
4.旋转 translate
<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android"> //透明度 <alpha android:fromAlpha="#起始透明度" android:toAlpha="结束透明度"> </alpha> //缩放 <scale android:fromXScale="起始x" android:fromYScale="起始Y" android:toXScale="结束X" android:toYScale="结束Y" android:pivotX="缩放中心x" android:pivotY="缩放中心Y"> </scale> //旋转 <rotate android:fromDegrees="起始角度" android:toDegrees="结束角度" android:pivotX="圆心X" android:pivotY="圆心Y"> </rotate> //平移 <translate android:fromXDelta="起始X" android:fromYDelta="起始Y" android:toXDelta="结束X" android:toYDelta="结束Y"> </translate></set>
1、在res下创建anim文件夹,补间动画的xml放到改文件夹下
2、Animation animation = AnimationUtils.LoadAnimation(上下文,R.ainm.XXX);
imageView.startAinmation(animation);
属性动画:
可以用xml定义动画效果:
<set xmlns:android="http://schemas.android.com/apk/res/android"> <objectAnimato android:propertyName="属性动画操作的属性" android:valueType="操作属性值的类型" android:valueFrom="操作动画的起始值" android:valueTo="操作动画的结束值"/></set>
1、在项目的res文件夹下创建animation文件夹,存放属性动画的xml文件
2、设置一个或者多个属性
3、在java代码中使用
Animation animation=AnimationInflater.loadAnimation(上下文,R.animation.x);
animation.setTarget(需要使用动画的view对象);
animation.start();
也可以用Java代码事项属性动画:
1、单一属性设置:
ObjectAnimator animator =ObjectAnimation.ofFloat
(使用动画的view对象,需要设置的动画属性,需要动画的属性的取值);
animation.setTarget(需要使用动画的view对象);
animation.start();
2、多个属性的设置
ObjectAnimation animation1=ObjectAnimation.ofFloat();ObjectAnimation animation2=ObjectAnimation.ofFloat();AnimatorSet set=new AnimatorSet();set.paly(animator1).after(animator2);//android:ordering="sequentially"set.paly(animator1).with(animator2);//android:ordering="together"set.start();
终于算是整理了一些有用的东西。慢慢的发现,其实基础太过于重要,也太容易在所谓前进的道路上被忽略掉。总算是克服了一下懒癌。算是最近除了看完一本《月亮与六便士》以外。最有意义的一件事。对了前两天说好的写自定义view呢。画了个圆跟曲线就懒得写了。好吧好吧,懒癌依旧。
- Android 动画总结-Layout动画
- Android 动画总结-帧动画
- Android 动画总结-属性动画
- Android 动画总结-矢量动画
- Android动画总结!!!!
- android 动画总结
- Android动画总结
- Android 动画 总结
- android:ViewPager动画总结
- android 动画效果总结
- android动画总结
- Android 属性动画总结
- Android 属性动画总结
- Android 基础动画总结
- android动画总结
- Android的动画总结
- Android动画总结
- Android动画总结
- [乱搞]斐波那契数列与gcd之间一个有趣的定理
- Android图片处理框架之Fresco学习使用
- java filter过滤器的配置
- 面向对象和面向过程的区别
- MXNet的训练入口:fit.py源码详解
- Android 动画总结
- c++ 学习 内存四区
- PAT--1050. String Subtraction
- Spring Cloud构建微服务架构(七)消息总线
- 文章标题
- shell for用法
- 基于jdk的网络编程和使用Netty的比较
- Java反射机制应用实践
- Htc Vive入门之凝视效果(眼神杀,遇神杀神,遇佛杀佛)