Android动画之RotateAnimation的基本用法-程序员宅基地

技术标签: android  动画  Android  

1. 在android中提供了4中动画
AlphaAnimation 透明度动画效果
ScaleAnimation 缩放动画效果
TranslateAnimation 位移动画效果
RotateAnimation 旋转动画效果

2.我们这里讲一下RotateAnimation
RotateAnimation构造方法参数详解:

 RotateAnimation (float fromDegrees, float toDegrees, int pivotXType, float pivotXValue, int pivotYType, float pivotYValue) 

参数说明:
float fromDegrees:旋转的开始角度。
float toDegrees:旋转的结束角度。
int pivotXType:X轴的伸缩模式,可以取值为ABSOLUTE、RELATIVE_TO_SELF、RELATIVE_TO_PARENT。
float pivotXValue:X坐标的伸缩值。
int pivotYType:Y轴的伸缩模式,可以取值为ABSOLUTE、RELATIVE_TO_SELF、RELATIVE_TO_PARENT。
float pivotYValue:Y坐标的伸缩值。
3.基本的使用:

public class MainActivity extends Activity {
     
ImageView image; 
Button start; 
Button cancel; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_main); 
image = (ImageView) findViewById(R.id.main_img); 
start = (Button) findViewById(R.id.main_start); 
cancel = (Button) findViewById(R.id.main_cancel); 
/** 设置旋转动画 */ 
final RotateAnimation animation =new RotateAnimation(0f,360f,Animation.RELATIVE_TO_SELF, 
0.5f,Animation.RELATIVE_TO_SELF,0.5f); 
animation.setDuration(3000);//设置动画持续时间 
/** 常用方法 */ 
//animation.setRepeatCount(int repeatCount);//设置重复次数 
//animation.setFillAfter(boolean);//动画执行完后是否停留在执行完的状态 
//animation.setStartOffset(long startOffset);//执行前的等待时间 
start.setOnClickListener(new OnClickListener() { 
public void onClick(View arg0) { 
image.setAnimation(animation); 
/** 开始动画 */ 
animation.startNow(); 
} 
}); 
cancel.setOnClickListener(new OnClickListener() { 
public void onClick(View v) { 
/** 结束动画 */ 
animation.cancel(); 
} 
}); 
} 
} 
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u013201028/article/details/46043621

智能推荐

IROS2021投稿说明_iros投稿流程-程序员宅基地

文章浏览阅读5.4k次,点赞3次,收藏7次。论文应长达六页,最多可增加两页(每页收费180欧元)。注意:最大页数包括参考文献。例如:如果论文的技术部分是6页,那么你可以包括最多2页的额外信息,例如参考文献,根据所述费用(即180欧元/页* 2页= 360欧元额外费用)。一个短视频(最多1分钟)也可以附在你的论文,以补充结果(见下面的说明)。IROS会议文件审查委员会(如ICRA的CEB)严格审查所有提交的文件,然后通过IROS 2021年高级计划委员会作出接受决定。各组别的最佳论文奖亦由各自的评审委员会选出。Instructio._iros投稿流程

Android异步处理三:Handler+Looper+MessageQueue深入详解_handler looper message详解、-程序员宅基地

文章浏览阅读5.5w次,点赞53次,收藏103次。本博文地址:http://blog.csdn.net/mylzc/article/details/6771331 转载请注明出处Android异步处理系列文章索引Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面_handler looper message详解、

Mustache语法中实现if-else_mustache if-程序员宅基地

文章浏览阅读604次。1、{{#prop}}{{/prop}}标签:这对标签的作用非常强大,可以同时完成if-else和for-each以及动态渲染的模板功能。在这对标签之间,可以定义其它模板内容,嵌套所有标签1.{{#prop}}{{/prop}}标签:这对标签的作用非常强大,可以同时完成if-else和for-each以及动态渲染的模板功能。在这对标签之间,可以定义其它模板内容,嵌套所有标签。<ul class="dropdown-menu" role="menu"> <shir._mustache if

好玩的.滑块验证_什么地方要经常滑块验证-程序员宅基地

文章浏览阅读183次。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X..._什么地方要经常滑块验证

练习03: 定义f(n)为其各位数字的平方和_python利用函数完成平方等式题。对于一个十进制的正整数,定义f(n)为其个位数字的平方和-程序员宅基地

文章浏览阅读4.2k次,点赞5次,收藏3次。题目需求:对于一个十进制的正整数, 定义f(n)为其各位数字的平方和,如:f(13) = 12 + 32 = 10f(207) = 22 + 02 + 72 = 53下面给出三个正整数k,a, b,你需要计算有多少个正整数n满足a<=n<=b,且k*f(n)=n输入:第一行包含3个正整数k,a, b, k>=1, a,b<=1018, a<=b;输出..._python利用函数完成平方等式题。对于一个十进制的正整数,定义f(n)为其个位数字的平方和

线性表——栈和队列_对比画出线性表与栈与队列-程序员宅基地

文章浏览阅读822次。快进来康康!!线性表第三关——栈和队列_对比画出线性表与栈与队列

随便推点

Ubuntu下TFTP_Server安装与配置_apt-get tftp-server-程序员宅基地

文章浏览阅读6.5k次。在IP-Camera开发过程中偶尔会使用到通过TFTP从PC端下载文件到开发板。之前一直使用windows下TFTP_Server软件3CDaemon和“Megatops TFTP Server”。但在使用过程中某一天IP-Camera开发板突然无法ping通Windows的IP,也就用不了windows下的TFTP Server工具了。但可以ping通虚拟机下的Ubuntu系统,故在Ub_apt-get tftp-server

onedrive手机登录出现 "无法登录,管理员需要为你分配可执行此操作的SharePoint和OneDrive许可证"_你的管理员需要向你的账号分配许可证-程序员宅基地

文章浏览阅读1w次。​​  最近pan当凉了,加上某云把用户当傻子的激励计划,决定不再使用某云,寻找其他的云端存储方案,刚好自己学校购买了office全家桶,就尝试了一下onedrive教育版,用来做办公同步很不错,容量1T绝对够用,但是由于下载速度的限制不是很适合做云端主存。使用期间遇到电脑可以登录但是手机端无法登录的情况,记录如下​​   首先对于大部分情况都是电脑端注册后等24小时手机端就好了,不需要折腾,如..._你的管理员需要向你的账号分配许可证

用ModelSim仿真PLL模块_modesim独立仿真pll-程序员宅基地

文章浏览阅读1.5w次,点赞4次,收藏25次。由于要对FPGA读写SDRAM的工程进行调试,第一步就是验证PLL模块的功能,故结合网上找的一些资料,进行了如下PLL仿真实验。下面是仿真的全过程首先,看一下Quartus中的PLL模块:从上面图中可以看出:我的FPGA输入时钟是20MHZ,该PLL有三个输出,其中C0:5倍频,100MHZC1:1倍频,20MHZC2:5倍频,100MHZ,同时相对于C_modesim独立仿真pll

uni-app 框架超详细新手入门_uni框架-程序员宅基地

文章浏览阅读7.6k次,点赞3次,收藏39次。什么是uni-app?(介绍)uni-app 是一个使用 Vue.js 开发跨平台应用的前端框架。开发者通过编写 Vue.js 代码,uni-app 将其编译到iOS、Android、微信小程序等多个平台,保证其正确运行并达到优秀体验。uni-app 继承自 Vue.js,提供了完整的 Vue.js 开发体验。uni-app 组件规范和扩展api与微信小程序基本相同。有一定 Vue.js 和微信小程序开发经验的开发者可快速上手 uni-app ,开发出兼容多端的应用。uni-app提供了条件编译_uni框架

滴滴开源DRouter:一款高效的Android路由框架-程序员宅基地

文章浏览阅读5.4k次。桔妹导读:DRouter是滴滴乘客端自研的一套Android路由框架,基于平台化解耦的思想,为组件间通信服务。该项目以功能全面、易用为原则,支持各种路由场景,在页面路由、服务获取和过滤、跨..._滴滴路由框架作用

errorThrown:ReferenceError: data is not defined-程序员宅基地

文章浏览阅读3.2k次。ajax请求error:function(jqXHR,textStatus,errorThrown){ console.log(jqXHR.); console.log(textStatus); console.log(errorThrown);}error函数出现errorThrown:ReferenceError: data is not defined的错误。经排查出现这个问题的原因是由于datatype引起的datatype:“json”改为datatype:“text_referenceerror: data is not defined