react-native 金币彩带雨下落动画
日常项目中,经常遇到一些表情雨/金币雨/彩带雨 等下落的动画,之前做android原生的时候,写过类似的效果,主要通过自定义view 在onDraw
里绘制下落的过程,具体可以看下我的这篇github地址android 仿微信表情雨下落,现在转战 react-native
,同样可以实现这样的效果,主要用到的动画库 react-native-animatable
安装 yarn add react-native-animatable
库
主要用到的动画是移动下落,即translateY
,从屏幕顶部下落至底部,同时过程中可以左右摇摆,每次随机图片下落。
_FailAnimation = ({style,duration,delay,startY,speed,children}) => {
return <Animatable.View //下落动画
style={style}
duration={duration}
delay={delay}
animation={{
from: {translateY: startY},
to: {translateY: this.state.parentHeight + speed}
}}
easing={t => Math.pow(t, 1.2)}
useNativeDriver>
{children}
</Animatable.View>
}
_SwingAnimation = ({delay, duration, children}) => {
return <Animatable.View //左右摇摆动画
animation={{
0: {
translateX: -12,
rotate: '10deg',
},
0.5: {
translateX: 0,
rotate: '0deg',
},
1: {
translateX: 12,
rotate: '-10deg',
},
}}
delay={delay}
duration={duration}
direction="alternate"
easing="ease-in-out"
iterationCount="infinite"
useNativeDriver>
{children}
</Animatable.View>
}
主要用到的动画,动画是可以相互嵌套的
range(count).map((i) =>(
<FailAnimation
key={i}
startY={startY}
speed={speed}
style={{
position: "absolute",
left: Math.random() * this.state.parentWidth
}}
duration={duration}
delay={i * (duration / count)}
>
<SwingAnimation
delay={Math.random() * duration }
duration={duration}
>
{this._imgRandom(imgs)}
</SwingAnimation>
</FailAnimation>
))
通过外部传属性imgs
图片数组
<Rain
imgs={imgs}
count={35}
duration={1500}>
</Rain>
源代码github地址 https://github.com/taixiang/reactNativeDemo
这个github地址里后续会记录平时学习工作中用到的rn方面的知识点,这会是一个长期的过程,我自己也会坚持下去。
欢迎关注我的个人博客:https://www.manjiexiang.cn/
更多精彩欢迎关注微信号:春风十里不如认识你
一起学习,一起进步,欢迎上车,有问题随时联系,一起解决!!!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
阿里云 — 服务器购买流程(适合新手小白)
阿里ESC服务器购买教程一:服务器二:拥有阿里云账户!三:阿里优惠活动四:根据需要,选择方案并购买1;根据情况,选择要购买的方案2;选择购买的服务器类型3;查看清单信息,并查看是否使用了优惠券2;付款完成订单五:购买完成,返回控制台六:服务器购买完成,本篇小结一:服务器作为一个开发人员,作为一个程序员,服务器早晚是我们要遇到的一件事对于新人来说,这可能是一件头疼的事情,不要怕…毕竟现在已经有大神前辈为我们趟好路,服务器的购买不要有什么编程基础你要你会上网,好好看看 Jacob 这篇文章,你将轻松掌握。废话不多,我们开始吧! 有阿里云账户的直接点击↓ ↓-阿里产品优惠券大礼包 (新手必得享超值优惠)平时1核1G优惠过后要300多一年,2核4G性能强劲,足够中小型网站/服务器建设建议大家直接购买此优惠,很少见优惠力度这么
-
下一篇
什么是云服务器?
什么是云服务器 云服务器Elastic Compute Service(ECS)是阿里云提供的一种基础云计算服务。它能帮助您快速的构建更稳定、安全的应用,提高运维效率,降低IT成本,使您更专注于核心业务创新。 云服务器说白了就是远程不知放在哪个机房的一台电脑,可以通过远程控制部署自己的项目。 云服务器相对传统的服务器而言,在部署项目时您无需提前采购硬件设备,而是根据业务需要,随时创建所需数量的云服务器ECS实例。在使用过程中,随着业务的扩展,您可以随时扩容磁盘、增加带宽。如果不再需要云服务器,也能随时释放资源,节省费用。 下图列出了ECS涉及的所有资源,包括实例规格、块存储、镜像、快照、带宽和安全组。您可以通过云服务器管理控制台或者阿里云App及API配置您的ECS资源。 相关概念 在使用ECS之前,您需要了解以下概念: 地域和可用区:是指EC
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Dcoker安装(在线仓库),最新的服务器搭配容器使用
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS8编译安装MySQL8.0.19
- MySQL数据库在高并发下的优化方案
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池