android scaleanimation动画,Android 动画之ScaleAnimation应用详解「建议收藏」

android scaleanimation动画,Android 动画之ScaleAnimation应用详解「建议收藏」android中提供了4中动画:AlphaAnimation透明度动画效果ScaleAnimation缩放动画效果TranslateAnimation位移动画效果RotateAnimation旋转动画效果本节讲解ScaleAnimation动画,ScaleAnimation(floatfromX,floattoX,floatfromY,floattoY,intpivotX…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

android中提供了4中动画:

AlphaAnimation 透明度动画效果

ScaleAnimation 缩放动画效果

TranslateAnimation 位移动画效果

RotateAnimation 旋转动画效果

本节讲解ScaleAnimation 动画,

ScaleAnimation(float fromX, float toX, float fromY, float toY,int pivotXType, float pivotXValue, int pivotYType, float pivotYValue)

参数说明:

float fromX 动画起始时 X坐标上的伸缩尺寸

float toX 动画结束时 X坐标上的伸缩尺寸

float fromY 动画起始时Y坐标上的伸缩尺寸

float toY 动画结束时Y坐标上的伸缩尺寸

int pivotXType 动画在X轴相对于物件位置类型

float pivotXValue 动画相对于物件的X坐标的开始位置

int pivotYType 动画在Y轴相对于物件位置类型

float pivotYValue 动画相对于物件的Y坐标的开始位置

代码:

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 ScaleAnimation animation =new ScaleAnimation(0.0f, 1.4f, 0.0f, 1.4f,

Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);

animation.setDuration(2000);//设置动画持续时间

/** 常用方法 */

//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();

}

});

}

}

效果:

9e796ec655977b74681eef08cb6c2a6a.png

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/181463.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Unable to preventDefault inside passive event listener due to target being treated as passive 怎么办?

    Unable to preventDefault inside passive event listener due to target being treated as passive 怎么办?翻译一下:chrome监听touch类事件报错:无法被动侦听事件preventDefault,是新版本chrome浏览器报错。说明:说一下这个preventDefault()是个什么鬼,这个是取消默认事件的,如果这个函数起作用的,比如默认的表单提交,a链接的点击跳转,就不好用了。原因:google浏览器为了最快速的相应touch事件,做出的改变。历史:当浏览器首先对默认的事件进行响应的…

    2022年10月22日
  • <noscript>元素[通俗易懂]

    <noscript>元素[通俗易懂]早期浏览器都面临一个特殊的问题,即当浏览器不支持JavaScript时如何让页面平稳地退化。对这 个问题的最终解决方案就是创造一个<noscript>元素,用以在不支持JavaScript的浏览器中显示替代 的内容。这个元素可以包含能够出现在文档<body>中的任何HTML元素——<script>元素除外。包含 在<noscript&gt…

    2022年11月3日
  • sed提取两个关键字之间的内容_python提取文本指定内容

    sed提取两个关键字之间的内容_python提取文本指定内容示例:<table> <thead> <tr> <th>ID</th> <th>名称</th> <th>电话</th> <th>说明</th> <th>类型</th> <th&g…

    2022年9月6日
  • 常见MQTT服务器搭建与试用(亲测通过)[通俗易懂]

    常见MQTT服务器搭建与试用(亲测通过)[通俗易懂]常见MQTT服务器搭建与试用(亲测通过)简介MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输)是IBM开发的一个即时通讯协议,它比较适合于在低带宽、不可靠的网络的进行远程传感器和控制设备通讯等,正在日益成为物联网通信协议的重要组成部分。MQTT现在主要用于即时通讯,物联网M2M,物联网采集等。本文就社区上常见的开源MQTT服务器在常见操作系统上…

    2022年5月12日
  • Vim中如何全选复制粘贴、批量注释

    Vim中如何全选复制粘贴、批量注释Vim中如何全选并复制?(区分大小写!!!)全部删除:按esc键后,先按gg(到达顶部),然后dG全部复制:按esc键后,先按gg,然后ggyG全选高亮显示:按esc键后,先按gg,然后ggvG或者ggVG单行复制:按esc键后,然后yy单行删除:按esc键后,然后dd粘贴:按esc键后,然后pvim只能粘贴50行的问题:在当前用户主目录(~)编辑~/.v

    2022年9月15日
  • 程序员必知的8大排序(三)——-冒泡排序,快速排序(java实现)

    程序员必知的8大排序(三)——-冒泡排序,快速排序(java实现)接上一篇:程序员必知的8大排序(二)——-简单选择排序,堆排序(java实现) 5.冒泡排序(1)基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。(2)实例:(3)用java实现publicclass

    2022年6月22日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号