Android 基础动画之 alpha 透明度 / translate 平移 / rotate 旋转

简介:       小菜最近在学习 Android 基本动画,前两天整理了一下相对复杂的 Android 基础动画之 scale 渐变缩放,今天继续学习整理其他三种基本动画。 公共属性: 1. android:duration="3500"       duration 代表动画过程中持续时常;所有的动画均有该属性; 2. android:fillAfter="true"       fillAfter 代表动画结束后是否保存在最后位置,true 为结束位置,false 为返回开始位置。

      小菜最近在学习 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:

  1. pivotXpivotY 代表的圆心坐标点值与 scale 缩放时类似,分为整数值,百分比/小数点值,百分比 + p 方式;
  2. 若不设置 pivotXpivotY 默认代表 (0, 0),若不设置 fromDegreestoDegrees 默认没有反应,因为旋转角度为 0,若不设置 duration 则没有旋转效果,默认时间为 0。

      小菜的动画部分是短板,正在从零学习,不对的请多多指正。

目录
相关文章
|
21天前
|
Java Android开发
Android开发之使用OpenGL实现翻书动画
本文讲述了如何使用OpenGL实现更平滑、逼真的电子书翻页动画,以解决传统贝塞尔曲线方法存在的卡顿和阴影问题。作者分享了一个改造后的外国代码示例,提供了从前往后和从后往前的翻页效果动图。文章附带了`GlTurnActivity`的Java代码片段,展示如何加载和显示书籍图片。完整工程代码可在作者的GitHub找到:https://github.com/aqi00/note/tree/master/ExmOpenGL。
22 1
Android开发之使用OpenGL实现翻书动画
|
3月前
|
XML 开发工具 Android开发
Android动画效果-更新中
Android动画效果-更新中
59 1
|
4月前
|
XML Android开发 数据格式
[Android]动画
[Android]动画
33 0
|
4月前
|
API Android开发 开发者
【Android App】Vulkan实现宇宙中旋转雷达动画效果(附源码和原始视频 超详细必看)
【Android App】Vulkan实现宇宙中旋转雷达动画效果(附源码和原始视频 超详细必看)
68 1
|
4月前
|
XML 小程序 Java
【Android App】给三维魔方贴图以及旋转动画讲解和实战(附源码和演示视频 超详细必看)
【Android App】给三维魔方贴图以及旋转动画讲解和实战(附源码和演示视频 超详细必看)
28 0
|
4月前
|
XML Java Android开发
Android App开发手机阅读中实现平滑翻书效果和卷曲翻书动画实战(附源码 简单易懂 可直接使用)
Android App开发手机阅读中实现平滑翻书效果和卷曲翻书动画实战(附源码 简单易懂 可直接使用)
70 0
|
4月前
|
XML Java Android开发
Android App开发手机阅读中贝塞尔曲线的原理讲解及实现波浪起伏动画实战(附源码和演示视频 可直接使用)
Android App开发手机阅读中贝塞尔曲线的原理讲解及实现波浪起伏动画实战(附源码和演示视频 可直接使用)
47 0
|
4月前
|
XML Java Android开发
Android App开发实战项目之仿手机QQ动感影集动画播放(附源码和演示视频 可直接使用)
Android App开发实战项目之仿手机QQ动感影集动画播放(附源码和演示视频 可直接使用)
29 0
|
4月前
|
XML Java Android开发
Android App开发动画特效之利用滚动器实现平滑翻页(附源码和演示 简单易懂)
Android App开发动画特效之利用滚动器实现平滑翻页(附源码和演示 简单易懂)
41 0
Android App开发动画特效之利用滚动器实现平滑翻页(附源码和演示 简单易懂)
|
4天前
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
24 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库