uni-app animation动画
uni.createAnimation(OBJECT)
官方文档
官方是这么描述animation动画的过程:
创建一个动画实例 animation。调用实例的方法来描述动画。最后通过动画实例的export方法导出动画数据传递给组件的animation属性。
接下来我就一一说明
如何使用uniapp动画
先说需求, 点击按钮小猫开始运动
首先在元素上绑定动画(:animation="animationData"
)
<view :animation="animationData" class="animation"><image src="../../static/猫.png"></image>
</view>
<button @click="running" >别跑</button>
这一步是把animationData数据传递给animation属性
export default {data() {return {animationData: {}// 在data中初始化animationData}},onUnload() {this.animationData = {}// 页面关闭后清空数据},onload(){this.animation = uni.createAnimation() // 创建动画实例},methods: {running() {this.animation.translateX(500).step({duration:1000})// 调用实例的方法来描述动画,translateX定义动画类型为x轴偏移, 500为偏移长度, 单位px// 调用 step() 来表示一组动画完成(当前参数动画时间1s)// step 可以配置参数用于指定当前组动画的配置。具体参数请看文档this.animationData = this.animation.export()// export方法导出动画数据}}}
一个动画就定义好了
下面来看效果
总结一下
链式动画
可以在step()之后紧接第二个动画, 类似promise写法
this.animation.translateX(100).step().translateY(100).step().translateX(0).step().translateY(0).step()
效果
动画多次触发
如果动画完成后, 元素未回到初始位置, 第二次动画是无法触发的
有两种方法使元素回到原位
通过链式操作
在动画最后在添加一个动画的, 效果是返回原位(透明度,动画时间都是0)
this.animation.translateX(200).step({duration:700}).translateX(0).opacity(0).step({duration:0})
设置timeout
如果动画时间是0.7s, 那就在0.8s之后使用动画让元素返回
timeout调用时间在动画完成之后
同样duration,opacity都为0
running() {this.animation = uni.createAnimation()this.animation.translateX(200).step({duration:700})this.animationData = this.animation.export()setTimeout(()=>{this.animation.translateX(0).opacity(0).step({duration:0})this.animationData = this.animation.export()}, 800);}
效果
uni-app animation动画相关推荐
- 【Android 基础】Animation 动画介绍和实现
转载自:http://www.cnblogs.com/yc-755909659/p/4290114.html 1.Animation 动画类型 Android的animation由四种类型组成: XM ...
- 用css的animation动画属性来实现一个H5场景动态电子邀请函
接触css的animation 也有一段时间,经常在朋友圈会看到一些很漂亮的电子邀请函,刚开始以为是视频,后来发现原来是用css的animation来实现的.经过分析,其实是利用css的animati ...
- uni app中使用图表
关于在uni app中运用图表 今天写项目,需要在uni app中使用图表,我使用的是ucharts. 具体操作如下 1.下载 ucharts可以直接在uni app的插件市场下载安装. 先在插件市场 ...
- android 实现控件搜索折叠效果 Animation动画折叠和普通折叠
android 实现控件搜索折叠效果 Animation动画折叠和普通控件直接折叠效果: 原理很简单,都是获取对应的高度,通过实现高度变化而改变显示效果: 话不多说直接上代码 1.普通折叠效果,以下是 ...
- 【Android 基础】Animation 动画介绍和实现(转载)
最近做了下这方面的研究,在博客园上找到了一片很好很详细的文章,于是转了一下.原地址是http://www.cnblogs.com/yc-755909659/p/4290114.html 1.Anima ...
- 用Animation动画实现Android应用的欢迎界面
转载自:http://smallmaple.iteye.com/blog/1255120 欢迎界面实现有多种方法,目前了解的实现方法包括 1) Animation; 2) 线程实现; 3) Handl ...
- Animation动画之alpha
一.Android的Anotation由四种类型构成:alpha,scale,translate,rotate; 二.在xml配置文件中 alpha: 渐变透明度动画效果; scale: 渐变尺寸缩放 ...
- css animation动画完成后隐藏_如何使用CSS实现旋转地球动画效果
旋转地球功能实现主要借助于CSS动画效果完成,通过移动地图背景图层,云彩图层等,在视觉上呈现出旋转地球效果.旋转地球最终实现效果如下图所示: 旋转地球效果展示 设计思路与核心技术 旋转地球效果实现主要 ...
- web 移动端 ios 浏览器中 animation 动画异常
关键字:animation,ios,移动端,异常 解决问题的办法:页面dom加载完毕时延时给dom加上动画类名.即在vue的mounted钩子中用定时器延时100ms左右给需要动画的dom加上类名. ...
最新文章
- 《预训练周刊》第8期:首个千亿中文大模型「盘古」问世、谷歌等提出视频音频文本转换器VATT...
- Linux系统介绍(二)文件系统结构
- C++指针数组、数组指针、数组名及二维数组技巧汇总
- Lua脚本语法说明(修订)
- linux c头文件#include<sys/types.h>和#include<fcntl.h>头文件总结
- left join、right join、inner join的区别
- 【原创】技术人员如何去面试?
- 最新linux 5,Linux 5.5 正式发布
- 玩游戏用什么轴的机械键盘好_机械键盘下的“轴”到底是什么?
- T4模板——一个神奇的代码生成器
- C# 设置Windows程序窗口为穿透状态
- 系统集成项目管理工程师计算题(成本管理计算)
- 影子系统PowerShadow v2.6.0511中文破解版
- linux如何查看读写权限,Linux系统下如何查看及修改文件读写权限
- github创建仓库以及上传项目到github
- ios弧形进度条_iOS圆形进度条
- Android面试题精选——再聊Android-Handler机制-2,android物联网开发李天祥源代码
- mysql 从a到z 查询_mysql 查询数据时按照A-Z顺序排序返回结果集
- 由多个库组成的 Android Jetpack,到底有多厉害?
- 菜刀连接图片一句话木马
热门文章
- 手搭深度推荐模型(四) NFM
- NFT国内化的“数字藏品” 国内互联网龙头的入局
- 四川农大2020计算机专业录取分数线,2020四川农业大学研究生分数线汇总(含2016-2019历年复试)...
- Python入门学习——DAY01
- 淘宝服务商怎么入驻(入驻淘宝需要什么条件)
- AI原创生成器1.3版-9大改动
- CSS 实现色彩渐变
- Matlab中绘制颜色渐变曲线
- 反应式流 Java 9 Flow实战
- Could not retrieve mirrorlist