android-Animation-十二
1Animations
它是指显示的动画效果,这些效果可以应用在绝大多数的控件里。
2Animations的分类
第一类:Tweened Animations
该类Animations提供了旋转(RotateAnimation),移动(TranslateAnimation),伸展(ScaleAnimation)
和谈出(AlphaAnimation)的效果。Animation抽象类下的五大子类:
AlphaAnimation, AnimationSet, RotateAnimation, ScaleAnimation, TranslateAnimation
其中AnimationSet的是用来装载多个其他的Animation,这样一个控件可以显示多个动画效果。
第二类:Frame-by-Frame Animations
这一类Animations可以创建一个Drawable序列,这些Drawable可以按照指定的时间间隙一个一个的显示
3.Tweened Animations使用
1.创建一个AnimationSet对象。
2.创建(一个或多个)Animation对象(即除了Set以外的)。
3.设置Animation对象的属性,AnimationSet属性。
4.调用控件的方法startAnimation(animtion);//该控件就是要使用动画效果的控件
![](/assets/blank.gif)
![](/assets/blank.gif)
1 public class AnimationTestActivity extends Activity { 2 3 /*animation:动画演示 4 * 1.创建AnimationSet 5 * 2.创建Animation对象: 6 * AlphaAnimation, RotateAnimation, 7 * ScaleAnimation, TranslateAnimation 8 * 3.设置该对象的参数 9 * 4.set添加该对象进去 10 * 5.使用控件对象执行set 11 * */ 12 private Button alphabutton=null; 13 private Button rotatebutton=null; 14 private Button scalebutton=null; 15 private Button translatebutton=null; 16 private ImageView imageview=null; 17 /** Called when the activity is first created. */ 18 @Override 19 public void onCreate(Bundle savedInstanceState) { 20 super.onCreate(savedInstanceState); 21 setContentView(R.layout.main); 22 alphabutton=(Button)findViewById(R.id.alphabutton); 23 rotatebutton=(Button)findViewById(R.id.rotatebutton); 24 scalebutton=(Button)findViewById(R.id.scalebutton); 25 translatebutton=(Button)findViewById(R.id.translatebutton); 26 imageview=(ImageView)findViewById(R.id.imageview); 27 alphabutton.setOnClickListener(new OnClickListener() { 28 29 public void onClick(View v) { 30 // TODO Auto-generated method stub 31 //1.创建AnimationSet对象 32 AnimationSet set=new AnimationSet(true); 33 //2.创建alphaanimation对象 34 AlphaAnimation aa=new AlphaAnimation(1, 0); 35 aa.setDuration(1000); 36 //3.添加进去 37 set.addAnimation(aa); 38 //4.控件启动该set 39 imageview.startAnimation(set); 40 } 41 }); 42 rotatebutton.setOnClickListener(new OnClickListener() { 43 44 public void onClick(View v) { 45 // TODO Auto-generated method stub 46 //1.创建AnimationSet对象 47 AnimationSet set=new AnimationSet(true); 48 //2.创建alphaanimation对象 49 RotateAnimation aa=new RotateAnimation(70,0,70,0); 50 set.setDuration(1000); 51 set.setFillAfter(true); 52 set.setFillBefore(false); 53 //3.添加进去 54 set.addAnimation(aa); 55 //4.控件启动该set 56 imageview.startAnimation(set); 57 } 58 }); 59 60 } 61 }
View Code
4.Frame-by-Frame Animations使用
res/anim/目录下的animationset的xml文件
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"android:interpolator="@android:anim/accelerate_interpolator"><alpha android:fromAlpha="0.1"android:toAlpha="1.0"android:duration="3000"/> <rotateandroid:fromDegrees="0"android:toDegrees="360"android:pivotX="0.5"android:pivotY="0.5"android:duration="3000"/> </set>
public class AnimationTest2Activity extends Activity {/** 使用自定义的Animation*/private Button alphabutton=null;private ImageView imageview=null;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);alphabutton=(Button)findViewById(R.id.alphabutton);imageview=(ImageView)findViewById(R.id.imageview);alphabutton.setOnClickListener(new OnClickListener() {public void onClick(View v) {//1.获得alphaanimationset对象,R.anim.alpha为我们创建的alphaanimationset的xml文件Animation autils= AnimationUtils.loadAnimation(AnimationTest2Activity.this,R.anim.alpha);//2.控件启动该set imageview.startAnimation(autils);}});} }
5.Interpolator和视频效果(采用多张图片快速显示)
转载于:https://www.cnblogs.com/beyondbycyx/p/4297344.html
android-Animation-十二相关推荐
- Android Studio(十二):打包多个发布渠道的apk文件
Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...
- Android入门(十二)SQLite事务、升级数据库
原文链接:http://www.orlion.ga/610/ 一.事务 SQLite支持事务,看一下Android如何使用事务:比如 Book表中的数据都已经很老了,现在准备全部废弃掉替换成新数据,可 ...
- Android - Animation(二)
Android - Animation(一) 一文总结了Android中的补间动画(View Animation/Tween Animation)和帧动画(Drawable Animation/Fra ...
- Android 第十二课 使用LitePal操作数据库(记得阅读最后面的注意事项哦)
一.LitePal简介 1.(新建项目LitePalTest) 正式接触第一个开源库---LitePal LitePal是一款开源的Android 数据库框架,它采用了对象关系映射(ORM)的模式. ...
- Kotlin 开发Android app(十二):Android布局FrameLayout和ViewPager2控件实现滚动广告栏
在上一节中我们简单的介绍了RecyclerView 的使用,他是整个开发的重点控件,这一节我们来看看FrameLayout 布局结合ViewPager2,开发一个广告控件. 新模块banner 先创建 ...
- android第十二章简易打地鼠游戏,MouseGame
MouseGame android简易打地鼠 在布局方面,整体是一个线性布局,最下方是由两个按钮和一个文本组成 关于上方的游戏画面,有两种设计思想 1.最外层采用帧布局,设置背景为有9个空洞的那张图片 ...
- 跟我学Android之十二 文件解析与处理
视频课:[免费]零基础学安卓Android移动开发 本章内容 第1节 File Explorer操作 第2节 SharedPreferences 第3节 普通文件操作 第4节 SD卡读写操作 ...
- 股票交易android开发(十二)
股票交易APP--充值
- Android群英传笔记——第十二章:Android5.X 新特性详解,Material Design UI的新体验
Android群英传笔记--第十二章:Android5.X 新特性详解,Material Design UI的新体验 第十一章为什么不写,因为我很早之前就已经写过了,有需要的可以去看 Android高 ...
- Android群英传读书笔记——第十二章:Android 5.X新特性详解
第十二章目录 12.1 Android5.X UI设计初步 12.1.1 材料的形态模拟 12.1.2 更加真实的动画 12.1.3 大色块的使用 12.2 Material Design主题 12. ...
最新文章
- 2022-2028年中国醋酸行业投资分析及前景预测报告
- Android 第三方图表类 MPChart 的使用
- python将csv文件拆分_【中年阿姨python入门】CSV文件拆分(DictReaderDictWriter)
- 11.context_suggester
- 个人支付宝收款页面,对接当面付接口
- php滚动图代码,JS上下、左右滚动代码(支持图片滚动)
- 汽车出租管理系统javaee实训_温州专业电动汽车充电设备实训台厂家诚信互利-嘉育仪器...
- 04 . Filebeat简介原理及配置文件和一些案例
- js获取本周日期和上周日期 --- 随手记录备忘
- C#高级编程面试考题
- js php 获取时间倒计时_,JS实现获取时间和设置倒计时代码分享
- 区块链大咖专访丨摩联科技:走一条少有人走的路
- 写字机器人开发之:python opencv linux下合作操作摄像头
- C# openfiledialog文件单选和多选
- PB EXCEL导入
- IMDB影评的情感分析任务:双层bi-LSTM模型(双向LSTM)
- 【SSM】13-Spring中实现依赖注入的两种方式(xml和注解)
- 高通MDM平台通过USB共享文件
- redis(五)跳跃表
- 如何保护您的网站免受恶意软件的侵害
热门文章
- http经典书籍--http权威指南
- 已解决:Job for docker.service failed because the control process exited with error code. See “systemctl
- 很好的linux启动说明( bootsect.S、setup.S、head.S)
- java:栈空间,堆空间,方法区
- 汇编:ret以及retf指令
- python四十七:在子类中调用父类方法
- 让程序员薪资上升一个level的良心十条建议,你有做到吗?
- jQuery 之 [ 动画 ]
- 发布一个实体类属性生成小工具,给开发加点料
- 微软或允许 Android 应用运行于 Windows 和 WP