Animations
Android支持2种类型的动画。内插动画可以应用于旋转、平移、放缩和渐变;frame-by-frame动画用来显示一系列的图片。关于创建、使用和应用动画的广泛概述可以在11章找到。
把动画定义成外部资源,有利于在多个地方使用,并且能基于设备硬件或方向选择适应的动画。
Tweened Animations
每个内插动画以独立的XML文件存储在/res/anim文件夹下。和layouts和drawable资源一样,动画XML的文件名用作资源的标识。
每个动画可以用来定义以下的变化:alpha(渐变)、scale(放缩)、translate(平移)和ratate(旋转)。
每个类型的动画都有特性来定义内插序列如何作用:
Alpha fromAlpha/toAlpha 0-1
Scale fromXScale/toXScale 0-1
fromYScale/toYScale 0-1
pivotX/pivotY 图像的宽度/高度的百分比字符串 0%-100%
Translate fromX/toX 0-1
fromY/toY 0-1
Rotate fromDegrees/toDegrees 0-360
pivotX/pivotY 图像的宽度/高度的百分比字符串 0%-100%
你可以使用<set/>标签来创建多个动画。一个动画集包含一个到多个动画变化,并且支持一些额外的标签和特性来定制动画集中的动画何时以及怎样运行。
接下来的列表给了一些set标签一些特性:
❑ duration 动画的持续时间(毫秒)
❑ startOffset 启动动画的延时(毫秒)
❑ fillBefore True表示在动画开始前应用动画变换
❑ fillAfter True表示动画开始后应用动画变换
❑ interpolator 设置整个时间范围如何影响动画的速度。在11章中会探讨这个变量。指定interpolator时需要引用系统的动画资源(android:anim/interpolatorName)。
如果你不使用startOffset标签,动画集中的动画将同步执行。
接下来的例子显示了动画集控制目标在缩小淡出的同时旋转360度:
- <?xml version=”1.0” encoding=”utf-8”?>
-
- <set xmlns:android=”http://schemas.android.com/apk/res/android”
-
- android:interpolator=”@android:anim/accelerate_interpolator”>
-
- <rotate
-
- android:fromDegrees=”0”
-
- android:toDegrees=”360”
-
- android:pivotX=”50%”
-
- android:pivotY=”50%”
-
- android:startOffset=”500”
-
- android:duration=”1000” />
-
- <scale
-
- android:fromXScale=”1.0”
-
- android:toXScale=”0.0”
-
- android:fromYScale=”1.0”
-
- android:toYScale=”0.0”
-
- android:pivotX=”50%”
-
- android:pivotY=”50%”
-
- android:startOffset=”500”
-
- android:duration=”500” />
-
- <alpha
-
- android:fromAlpha=”1.0”
-
- android:toAlpha=”0.0”
-
- android:startOffset=”500”
-
- android:duration=”500” />
-
- </set>
Frame-by-Frame Animations
Frame-by-Frame动画用于View的背景上,显示一系列的图片,每张图片显示指定的时间。
因为Frame-by-Frame动画显示drawables,所以,它们也被放在/res/drawble文件夹下(和Tweened动画不同),并且使用它们的文件名作为它们的资源标识。
接下来的XML片段显示了一个简单的动画,它循环显示一些位图资源,每张位图显示0.5秒。为了能使用这个XML片段,你需要创建rocket1-rocket3 三个新的图片资源。
- <animation-list
-
- xmlns:android=”http://schemas.android.com/apk/res/android”
-
- android:oneshot=”false”>
-
- <item android:drawable=”@drawable/rocket1” android:duration=”500” />
-
- <item android:drawable=”@drawable/rocket2” android:duration=”500” />
-
- <item android:drawable=”@drawable/rocket3” android:duration=”500” />
-
- </animation-list>
分享到:
相关推荐
3. 使用特定工具(如Boot Animations Editor)组合这些帧,并编写控制播放的剧本(通常是一个名为"bootanimation"的文本文件)。 4. 将这些元素打包成ZIP文件,确保文件结构正确:即包含一个名为"frames"的文件夹,...
特征3种游戏模式:本地,单人,在线3个难度等级(简单,中等,困难) 机器人相互对抗的竞技场每次在线比赛都设有单独的房间是否用密码保护的房间浅黑(夜间模式)主题启用或禁用动画的选项也有动画我说它有动画吗?...
CSS3的新特性,如过渡(transitions)、动画(animations)和Flexbox或Grid布局,可以实现动态效果和响应式设计,使界面在不同设备上都能良好展示。 JavaScript是实现此APP动态功能的关键。它是一种客户端脚本语言...
基于4GGPRS DTU开发板的硬件图纸与软件代码全套资源,军工级电路,支持多种通信协议与数据加密,适合物联网应用。,基于4GGPRS DTU开发板的硬件图纸与软件代码全套,军工级电路,支持多种通信协议与数据加密,适用于多种物联网应用。,资料:4g GPRS DTU 开发板软件代码硬件图纸料包括:原理图,版图,单片机代码,sim800c官方资料 不含PCB板 本公司批产产品,已无故障运行数年 全套硬件图纸和软件代码。 程序比正点原子的可靠,军工级485电路。 NBIOT和4G等采用AT指令的均可参照此代码 GPRS具有比NBIOT更低的价格更好的网络,是目前低速物联网的主要通讯技术之一。 485转GPRS GPRS支持协议: TCP UDP HTTP-GET HTTP-POST FTP Md5数据加密 心跳包 电源部分,带共模电感,防反接二极管,Tvs管,5-30Vdc转5V和4V 485部分,硬件延时电路,可靠稳定 引出网络状态(兼电源)指示灯,收发指示灯,设置状态指示灯 微动按键设置工作状态 已预留LORA模块位置,若不用可将他的Io口改做他用,能引出一路串口,2路Io口 单片机
scala-intellij-bin-2024.1.1.zip
基于Android的平台书架设计实现源码,主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的学习者,也可作为课程设计、期末大作业。
# 基于nRF5系列芯片和SoftDevice SDK的蓝牙低能耗应用 ## 项目简介 这是一个基于nRF5系列芯片和SoftDevice SDK的蓝牙低能耗(BLE)应用程序的示例项目。项目包含基于nRF51822和nRF52832芯片的示例代码,以及设备固件升级(DFU)相关的代码。 ## 项目的主要特性和功能 基于nRF5系列芯片项目代码适用于Nordic Semiconductor的nRF51822和nRF52832芯片,这些芯片是专为蓝牙低能耗应用设计的。 使用SoftDevice SDK项目使用了Nordic的SoftDevice SDK,这是一个高度优化的BLE堆栈,适用于nRF5系列芯片。 支持UART通信项目中的BLE应用程序通过UART接口进行通信,允许数据通过BLE连接进行发送和接收。 设备固件升级(DFU)支持项目包含用于安全设备固件升级的引导加载程序,支持固件更新的验证和存储。
矿业生产管理数字化平台解决方案.doc
Matlab领域上传的视频是由对应的完整代码运行得来的,完整代码皆可运行,亲测可用,适合小白; 1、从视频里可见完整代码的内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
kylin v10 SP1 系统下 可以查看本机电池容量放电和充电电流
【资源介绍】 1、该资源包括项目的全部源码,下载可以直接使用! 2、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,也可以作为小白实战演练和初期项目立项演示的重要参考借鉴资料。 3、本资源作为“学习资料”如果需要实现其他功能,需要能看懂代码,并且热爱钻研和多多调试实践。 基于深度学习的movielens推荐模型新版算法源码+数据+说明文档.zip 基于深度学习的movielens推荐模型新版算法源码+数据+说明文档.zip 基于深度学习的movielens推荐模型新版算法源码+数据+说明文档.zip 基于深度学习的movielens推荐模型新版算法源码+数据+说明文档.zip 基于深度学习的movielens推荐模型新版算法源码+数据+说明文档.zip 基于深度学习的movielens推荐模型新版算法源码+数据+说明文档.zip 基于深度学习的movielens推荐模型新版算法源码+数据+说明文档.zip 基于深度学习的movielens推荐模型新版算法源码+数据+说明文档.zip 基于深度学习的movielens推荐模型新版算法源码+数据+说明文档.zip 基于深度学习的movielens推荐模型新版算法源码+数据+说明文档.zip 基于深度学习的movielens推荐模型新版算法源码+数据+说明文档.zip 基于深度学习的movielens推荐模型新版算法源码+数据+说明文档.zip 基于深度学习的movielens推荐模型新版算法源码+数据+说明文档.zip
海神之光上传的视频是由对应的完整代码运行得来的,完整代码皆可运行,亲测可用,适合小白; 1、从视频里可见完整代码的内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
1、以上文章可用于参考,请勿直接抄袭,学习、当作参考文献可以,主张借鉴学习 2、资源本身不含 对应项目代码,如需完整项目源码,请私信博主获取
1、以上文章可用于参考,请勿直接抄袭,学习、当作参考文献可以,主张借鉴学习 2、资源本身不含 对应项目代码,如需完整项目源码,请私信博主获取
14.智能台灯(语音模式)_20240318_205506.zip
数字信号处理中的采样与重构理论及其应用
python快速入门,零基础也能轻松掌握的入门指南,看着一个就够了。
LabView与三菱全系列通讯方法详解:上位机读取方法及实践,LabView与三菱全系列通讯方法及上位机数据读取攻略,labview和三菱全系列通讯方法 labview和三菱全系列通讯办法,和上位机读取方法。 ,LabVIEW; 三菱全系列通讯方法; 三菱全系列通讯办法; 上位机读取方法,LabVIEW与三菱全系列通讯方案及上位机读取方法详解
题目:基于51单片机的多参数水质监测与报警系统设计 主控:AT89C51 显示:LCD1602 DS18B20温度传感器 浊度传感器(PCF8591+滑动变阻器模拟) PH传感器(ADC0832+滑动变阻器) 声光报警 led*4 功能: 1.实时检测水质温度、浊度、PH 2.实时显示相关数据 3.可以通过按键修改阈值 4.各数值不在标准范围内启动声光报警 5.ph低于下限红色小灯点亮;ph高于上限绿色小灯电亮;温度低于阈值蓝色小灯电亮;浑浊度高于阈值橙色小灯电亮
在B站看黑马程序员视频,整理的个人笔记