Android animation
来源:互联网 发布:c语言volatile 寄存器 编辑:程序博客网 时间:2024/04/29 23:46
完成动画步骤:
- 创建
AnimationSet
对象 - 根据需要创建相应的
Animation
对象 - 根据对动画的需求,为
Animation
对象设置相应的数据 - 将
Animation
对象添加到AnimationSet
对象中 - 使用控件对象开始执行
AnimationSet
代码实现动画效果
1、设置xml
2、编写java文件
/* * 旋转的x轴类型(三种): * 1. ABSOLUTE : 绝对值 * 2. RELATIVE_TO_SELF : 相对于自身 * 3. RELATIVE_TO_PARENT: 相对于父控件 **/ private class RotateButtonListener implements View.OnClickListener { @Override public void onClick(View view) { AnimationSet animationSet = new AnimationSet(true); RotateAnimation rotateAnimation = new RotateAnimation(0, 360,//旋转0~360度,0为12点钟方向 Animation.RELATIVE_TO_PARENT, 1f, //旋转的x轴类型,具体x的值——1f为整个父控件的宽 Animation.RELATIVE_TO_PARENT, 0f); //旋转的y轴类型,y值 rotateAnimation.setDuration(2000); //持续时间 animationSet.addAnimation(rotateAnimation); //RotateAnimation加入到AnimationSet imageView.startAnimation(animationSet); } } /* * 缩小 **/ private class ScaleButtonListener implements View.OnClickListener { @Override public void onClick(View view) { AnimationSet animationSet = new AnimationSet(true); ScaleAnimation scaleAnimation = new ScaleAnimation(1, 0.1f, 1, 0.1f,//x轴大小从1~0.1,y轴从1~0.1 Animation.RELATIVE_TO_SELF, 0.5f, //以圆心(x,y)进行缩放 Animation.RELATIVE_TO_SELF, 0.5f); animationSet.addAnimation(scaleAnimation); animationSet.setStartOffset(1000); //动画开始之前的等待时间 animationSet.setFillAfter(true); //保持动画结束的状态 animationSet.setFillBefore(false); //回到动画开始前的状态(false) animationSet.setDuration(2000); //动画时间 imageView.startAnimation(animationSet); } } /* * 渐渐淡出效果: * 1. 创建一个AnimationSet对象 * 2. 创建一个AlphaAnimation对象 **/ private class AlphaButtonListener implements View.OnClickListener { @Override public void onClick(View view) { AnimationSet animationSet = new AnimationSet(true); //创建一个AnimationSet对象 AlphaAnimation alphaAnimation = new AlphaAnimation(1, 0);//从完全透明到完全不透明 alphaAnimation.setDuration(1000); //设置动画执行的时间(单位:毫秒) animationSet.addAnimation(alphaAnimation);//将AlphaAnimation对象添加到AnimationSet当中 imageView.startAnimation(animationSet); //使用ImageView的startAnimation方法开始执行动画 } } private class TranslateButtonListener implements View.OnClickListener { @Override public void onClick(View view) { AnimationSet animationSet = new AnimationSet(true); TranslateAnimation translateAnimation = new TranslateAnimation( Animation.RELATIVE_TO_SELF, 0f, //x-start Animation.RELATIVE_TO_SELF, 0.5f, //x-end Animation.RELATIVE_TO_SELF, 0f, //y-start Animation.RELATIVE_TO_SELF, 1.0f); //y-end translateAnimation.setDuration(1000); animationSet.addAnimation(translateAnimation); imageView.startAnimation(animationSet); } }
0 0
- Android -animation-Property Animation
- Android-animation-View Animation
- Android-animation-drawable Animation
- android animation
- Android Animation
- android animation
- android Animation
- Animation Android
- Android Animation
- android animation
- android animation
- android animation
- Android Animation
- Android--Animation
- android animation
- android animation
- android Animation
- Android Animation
- Android Studio 开发问题记录
- 回车键绑定
- JS----简单表单密码强度检验
- Linux env --显示当前用户的环境变量
- 【.Net码农】依赖注入那些事儿
- Android animation
- 新的项目-使用手机蜂窝定位,上架被苹果11.12 拒绝
- android studio 插件 gradle view 查看gradle依赖树
- JFinal学习--08事务
- ajax 上传参数 下载excel文件
- 深入浅出学Spring Data JPA
- 通过方法名动态调用方法
- linux loop device介绍
- 按钮的裁剪拉伸1