Android 基础动画之 alpha 透明度 / translate 平移 / rotate 旋转
小菜最近在学习 Android 基本动画,前两天整理了一下相对复杂的 Android 基础动画之 scale 渐变缩放,今天继续学习整理其他三种基本动画。
公共属性:
1. android:duration="3500"
duration 代表动画过程中持续时常;所有的动画均有该属性;
2. android:fillAfter="true"
fillAfter 代表动画结束后是否保存在最后位置,true 为结束位置,false 为返回开始位置。
动画的绑定方式可以参考上一篇博客,下面直接介绍各动画详细属性。
Alpha 透明度
anim_alpha.xml
<?xml version="1.0" encoding="utf-8"?> <alpha xmlns:android="http://schemas.android.com/apk/res/android" android:duration="3500" android:fromAlpha="0.0" android:toAlpha="1.0" />
1. android:fromAlpha="0.0"
fromAlpha 代表 View 的初始透明度;
2. android:toAlpha="1.0"
toAlpha 代表 View 的终止透明度;
Tips: 透明度设置的范围并非只是在 0.0~1.0 之间,<= 0.0 不可见,>= 1.0 为可见,设置在初始值小于 0.0 或终止值大于 1.0 时显示是有区别的。例:fromAlpha="-2.5" 和 toAlpha="1.0",动画时间前 2.5s 均不可见,最后 1s 出现由 0.0->1.0 的透明变化,建议大家多多尝试。
Translate 平移
anim_translate.xml
<?xml version="1.0" encoding="utf-8"?> <translate xmlns:android="http://schemas.android.com/apk/res/android" android:duration="3500" android:fillAfter="true" android:fromXDelta="0" android:fromYDelta="0" android:toXDelta="50%" android:toYDelta="50%p" />
1. android:fromXDelta="0"
fromXDelta 代表水平方向平移的初始位置;
2. android:toXDelta="50%"
toXDelta 代表水平方向平移的终止位置;
3. android:fromYDelta="0"
fromYDelta 代表竖直方向平移的初始位置;
4. android:toYDelta="50%"
toYDelta 代表竖直方向平移的终止位置;
Tips: 平移的值与 scale 缩放时类似,分为整数值,百分比/小数点值,百分比 + p 方式,使用方法与 scale 中一致,请参照上一篇博客介绍。
Rotate 旋转
anim_rotate.xml
<?xml version="1.0" encoding="utf-8"?> <rotate xmlns:android="http://schemas.android.com/apk/res/android" android:duration="3500" android:fillAfter="true" android:fromDegrees="0" android:pivotX="50%" android:pivotY="0%" android:toDegrees="360" />
1. android:fromDegrees="0"
fromDegrees 代表 View 旋转时初始角度,角度正负均可;
2. android:toDegrees="0"
toDegrees 代表 View 旋转时终止角度;
3. android:pivotX="50%"
pivotX 代表 View 旋转时圆心 (pivotX, y);
4. android:pivotY="0%"
pivotY 代表 View 旋转时圆心 (x, pivotY);
Tips:
- pivotX 和 pivotY 代表的圆心坐标点值与 scale 缩放时类似,分为整数值,百分比/小数点值,百分比 + p 方式;
- 若不设置 pivotX 和 pivotY 默认代表 (0, 0),若不设置 fromDegrees 和 toDegrees 默认没有反应,因为旋转角度为 0,若不设置 duration 则没有旋转效果,默认时间为 0。
小菜的动画部分是短板,正在从零学习,不对的请多多指正。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
我想加入阿里,我该怎么做?
2018年我实现了一个小目标,毕业三年加入阿里。 听上去好像挺厉害,挺光鲜,但是实际上并不那么容易,在这背后有很多我自己摸索和努力的故事。 在这里我想分享一些我的经验,送给那些跟我一样,没名校背景没大厂背景,但是想进阿里(或其他大厂),又有点迷茫不知该如何前进的人。 其实在进阿里之前,我也挺迷茫,内心有一些谜团一直困扰着我,比如阿里招人标准是什么?,自己距离这个标准有多少差距?那时候一直不知道,就好像置身于沙漠之中,却不知道往哪里走。这时候,找到方向最为关键。(很多人跟我那时候一样迷茫,因为不少人问过我,到底怎么样才能加入阿里。) 当时我问了几个在阿里的朋友: 我问:要进阿里是什么标准啊? 朋友答:社招的话一般P6起招,三年工作经验。 我又会问:P6是什么? 这时候往往得到的回答就不一样了。 这里普及一下,每个公司都有职别定级系统,阿里也是,技术岗以 P 定级,一般校招 P5,社招 P6起。 以前我入职淘宝的title是『资深无线开发工程师』是 P6级别, 那时候 P6还分 高级 与 资深,现在都统一成高级了。 那 P6 的标准到底是什么呢? 其实还挺难说清,这个不像是考试的分数定级那...
- 下一篇
30K iOS程序员的简述:如何快速进阶成为高级开发人员
前言: 本篇文章适用于所有在这个行业已经有了几年时间后想要在职业生涯中取得突破的开发人员,编程人员和程序员(或者你可能刚刚开始,但希望你能看到你的路径) 本文适合那些有着简单愿望的人:你想成为一名高级开发人员,并希望在你的领域中脱颖而出。在阅读完这篇文章后,您将获得一组具有最佳资源列表的路径,供您升级并成为高级开发人员。 作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:638302184,不管你是小白还是大牛欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!希望帮助开发者少走弯路。 免责声明:与生活中的所有事物一样,您可以随时设定自己的路径。尽管这不是唯一的方法,但是这是我在自己的职业生涯中发现的一种方法,并且通过我在过去一年中与我认为是社区中资深和受人尊敬的程序员的人进行了许多对话和访谈。 我已经积累了这篇文章的所有共同点。所有这些不仅仅是一篇关于如何成为更好的开发人员的文章。这是一个如何指导您如何使用高效实用的工具来优化您的时间,从而让您从生活中获得最大收益。将来你可以在任何地方进行这种学习 我们想要什么?1,我们都努...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Linux系统CentOS6、CentOS7手动修改IP地址
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装