android刷新时的圆形动画_【Android】圆形揭露动画

在Android系统中提供了一种圆形的揭露动画,具体表现为一个view以圆形的形式展开、揭示。所谓揭露动画,就是一种用于 View 之间,甚至界面之间的特殊过渡动画效果。通过ViewAnimationUtils.createCircularReveal方法可以创建一个RevealAnimator动画,代码如下所示:

ViewAnimationUtils.createCircularReveal(

view,

x,//动画开始中心点X

y,//动画开始中心点Y

startR,//开始半径

endR);//结束半径

如上,各参数的意思已做了注释。

接下来通过一个demo来更好的理解它的用法和效果:

首先定义一个布局文件,显示两张图片:

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:gravity="center"

android:orientation="vertical">

android:id="@+id/img_1"

android:layout_width="100dp"

android:layout_height="100dp"

android:src="@drawable/test" />

android:id="@+id/img_2"

android:layout_width="100dp"

android:layout_height="100dp"

android:layout_marginTop="30dp"

android:src="@drawable/test" />

然后为这两张图片添加点击事件:

public void onViewClicked2(View view) {

switch (view.getId()) {

case R.id.img_1:

Animator animator = ViewAnimationUtils.createCircularReveal(

img1,

img1.getWidth() / 2,//动画开始中心点X

img1.getHeight() / 2,//动画开始中心点Y

0,//开始半径

img1.getWidth());//结束半径

animator.setInterpolator(new AccelerateDecelerateInterpolator());

animator.setDuration(1500);

animator.start();

break;

case R.id.img_2:

Animator animator2 = ViewAnimationUtils.createCircularReveal(

img2,

0,

0,

0,

(float) Math.hypot(img2.getWidth(), img2.getHeight()));//根号下x的平方+y的平方

animator2.setInterpolator(new AccelerateDecelerateInterpolator());

animator2.setDuration(1500);

animator2.start();

break;

}

}

运行后点击图片我们可以看到如下效果:

初始效果:

点击第一张图:

点击第二张图:

我们可以根据自己需要的效果来设置动画开始的中心点,以及开始和结束的半径,来实现我们想要的效果。

不光如此,我们还可以为activity的根部局设置揭露动画来实现activity的转场动画。

在新activity的onCreate方法中设置:

llContent.post(new Runnable() {

@Override

public void run() {

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {

Animator animator =  createCircularReveal(llContent,llContent.getWidth()/2,llContent.getHeight()/2,

0, (float) Math.hypot(llContent.getWidth(),llContent.getHeight()),2000);

animator.start();

}

}

});

其中llcontent是根部局,动画开始中心是布局的中心,动画开始半径是0,结束半径是对角线长度的一半,动画时间设置的是2秒,这样在进入activity的时候就可以看到整个布局是由中心向外以圆形的方式展开的。值得注意的是,该动画效果是从Android5.X开始添加的,在使用时我们要注意版本的控制。

乐潮信息www.leco-tec.com原创,引用请表明出处

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/266757.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jQuery_基本选择器

#id 概述&#xff1a; 根据给定的ID匹配一个元素 使用任何的元字符作为名称的文本部分&#xff0c;它必须被两个反斜杠转义&#xff1a;// 查找含有特定字符的元素 HTML 代码: <div id"notMe"><p>id"notMe"</p></div> <div id&…

STM32F103五分钟入门系列(一)跑马灯(库函数+寄存器)+加编程模板+GPIO总结

摘自&#xff1a;STM32F103五分钟入门系列&#xff08;一&#xff09;跑马灯&#xff08;库函数寄存器&#xff09;加编程模板GPIO总结 作者&#xff1a;自信且爱笑‘ 发布时间&#xff1a; 2021-04-28 21:17:40 网址&#xff1a;https://blog.csdn.net/Curnane0_0/article/det…

使用date命令来修改系统日期与时间

大多数情况下&#xff0c;我们只用date命令来输出不同格式的系统时间&#xff0c;但是很少用它来修改系统时间&#xff0c;因为ntp帮我们更好的解决了时间同步的问题&#xff0c;但是在未联网的终端环境里&#xff0c;偶尔还是用得着它的~ 1. 只修改日期 # date -s 2011-08-12…

计算机没有程序,计算机小知识:想尝试写程序却没有电脑?这个在线编辑器满足你...

大家好&#xff0c;我是零一&#xff0c;昨天的文章《计算机小知识&#xff1a;手把手教你写出自己的第一个程序&#xff1a;Hello World》发表后&#xff0c;没几分钟就有小伙伴问我&#xff0c;没有电脑&#xff0c;但是真的很想尝试去学习一下编程&#xff0c;应该怎么办&am…

微信小程序时间戳的转换及调用

13位 的时间戳&#xff0c;如下图&#xff1a; 效果图: 1.(utils.js里面的代码): function formatTime(timestamp, format) {const formateArr [Y, M, D, h, m, s];let returnArr [];let date new Date(timestamp); //13位的时间戳, 如果不是13位的, 就要乘1000,就像这样…

地壳中元素含量排名记忆口诀_地壳中含量最多的元素是什么?地壳中元素含量排名口诀...

地壳&#xff0c;乃地质术语&#xff0c;是指由岩石组成的固体地壳&#xff0c;是地球固体圈的最外层&#xff0c;也是岩石圈的重要组成部分。那么地壳中含量最多的元素是什么呢&#xff1f;以及地壳中元素含量排名口诀又是什么呢&#xff1f;地壳中含量最多的元素从地震波的研…

基于Wemos D1的感应开盖垃圾桶

参考&#xff1a;基于Wemos D1的感应开盖垃圾桶&#xff08;增加自己的代码实现部分&#xff09; 作者&#xff1a;LEO-max 发布时间&#xff1a;2020-12-29 15:21:26 网址&#xff1a;https://blog.csdn.net/zouchengzhi1021/article/details/111880104?spm1001.2014.3001.55…

电脑计算机主板不启动,电脑主板不能启动的解决方法

电脑主板不能启动的解决方法主板又称主机板、系统板、逻辑板、母板、底板等&#xff0c;是构成复杂电子系统例如电子计算机的中心或者主电路板。下面给大家介绍电脑主板不能启动的解决方法&#xff0c;欢迎阅读!电脑主板不能启动的解决方法电脑主板不能启动的解决方法一&#x…

ntop网络监控-安装配置指南

一、源码安装ntop 1、安装所需的库 yum -y install libpcap libpcap-devel libpng gdbm gdbm-devel glib libxml2-devel pango pango-devel gd 2、下载最新稳定版的ntopwget http://sourceforge.net/projects/ntop/files/ntop/Stable/ntop-4.1.0.tar.gz 解压与安装 tar zxf n…

WEB前端 CSS(非布局)

目录 WEB前端 CSSCSS引入方式CSS结构CSS选择器直接选择器组合选择器分组选择器 也叫并集选择器属性选择器伪类选择器伪元素选择器CSS选择器是一个查找的过程&#xff0c;高效的查找影响页面加载的效率CSS选择器的优先级CSS声明CSS非布局声明CSS布局声明除了css 对样式有影响&am…

mysql 从库 速度太慢_mysql查询速度慢的原因[整理版]

在以前的博客中陆续记录了有关查询效率方面的文章。今天在整理一下&#xff0c;写上自己的一些心得记录如下&#xff1a;常见查询慢的原因常见的话会有如下几种&#xff1a;1、没有索引或没有用到索引。PS&#xff1a;索引用来快速地寻找那些具有特定值的记录&#xff0c;所有M…

智能家居(工厂模式)

摘自&#xff1a;智能家居 作者&#xff1a;LEO-max 发布时间&#xff1a; 2021-03-05 00:38:07 网址&#xff1a;https://blog.csdn.net/zouchengzhi1021/article/details/114375529?spm1001.2014.3001.5502 目录 主流程设计框架及某一功能框架编写InputCommand.h框架contrlD…

计算机应用基础0006 19秋在线作业2,川大《计算机应用基础0006》13春在线作业2

计算机,建筑工程川大《计算机应用基础0006》13春在线作业214春13秋都有 试卷总分&#xff1a;100 测试时间&#xff1a;--单选题、单选题(共 50 道试题&#xff0c;共 100 分。)1. 在Windows资源管理器中&#xff0c;要把图标设置成缩略图方式&#xff0c;应在下面哪组菜单中设…

【c++基础】vector中按照Point类型某一个变量进行排序

code // sort(a.begin(), a.end(), cmpy);//subfunction bool cmpy(cv::Point const& a, cv::Point const& b) {return a.y < b.y; } 完转载于:https://www.cnblogs.com/happyamyhope/p/9269457.html

二叉树的三叉链表存储和基本操作

三叉链表存储表示 改进于二叉链表&#xff0c;增加指向父节点的指针&#xff0c;能更好地实现结点间的访问。 存储结构 /* 二叉树的三叉链表存储表示 */typedef struct BiTPNode{TElemType data;struct BiTPNode *parent,*lchild,*rchild; /* 双亲、左右孩子指针 */}BiTPNode,*…

麟龙指标通达信指标公式源码_通达信指标公式源码单阳不破主图指标公式

做价值的传播者&#xff0c;一路同行&#xff0c;一起成长问题&#xff1a;怎样才能每天都收到这类文章&#xff01;答案&#xff1a;只需点击上方《通达信公式指标》{通达信单阳不破}MA30: MA(C,30 ),COLORGREEN;MA30_: IF(MA30>REF(MA30,1),MA30,DRAWNULL),COLORMAGENTA;阳…

计算机基础中的分层教学,分层教学法在计算机基础课程中的应用研究

摘要&#xff1a;随着信息科技的发展&#xff0c;计算机技术发展成为国人关注的重点。职业教育作为中国教育的关注重点之一&#xff0c;其在近些年的发展中&#xff0c;由于不断扩大招生地源&#xff0c;学生的学习能力和学习进度都相差很大&#xff0c;再加上传统的教学方法&a…

树莓派外设开发之玩传感器

参考&#xff1a;用树莓派玩传感器 作者&#xff1a;LEO-max 发布时间&#xff1a; 2021-02-24 16:30:46 网址&#xff1a;https://blog.csdn.net/zouchengzhi1021/article/details/114026649?spm1001.2014.3001.5502 目录接线红外避障传感器声音传感器火焰传感器烟雾传感器超…

xxx.jar 中没有主清单属性

xxx.jar 中没有主清单属性 springboot 中是可以通过 jar 将整个项目打包成一个fat jar 的, 这个大家都知道. <!-- 打包jar文件时&#xff0c;配置manifest文件&#xff0c;加入lib包的jar依赖 --><plugin><groupId>org.apache.maven.plugins</groupId>…

面试软件设计人员的方法,附面试题。我的面试注重实效

前段时间招聘。因为我一直在我的部门推行一些有效却被绝大多数中国公司忽视的开发理念&#xff0c;比如平级人事结构、测试驱动开发、制度化绩效、设计先行、迭发等等&#xff0c;所以招软件设计师非常困难。最终问题还算解决了吧。以下是我的面试总结。  一般来说&#xff0…