React实战-深入分析ReactNative中的动画效果

本文探讨了ReactNative中的动画实现,包括通过Js构造新元素、改变Style属性、使用Animated库以及LayoutAnimation。重点介绍了Animated.Value和Animated.ValueXY的用法,并强调了组合动画、主要动画类型以及值变化的处理。ReactNative的动画虽仍有提升空间,但已能实现丰富的动画效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


React实战-深入分析ReactNative中的动画效果

说起动画效果感觉回到JavaScript的起源了,在早期的Web开发中,JS更多的是扮演着页面特效的角色,当然也只是属于做些边角料的工作,真正需要动画的地方,大多还是采用Flash或者AppletJs更多的是操作html元素的变化,如果大量采用Js,则会严重影响页面的性能。

在了解ReactNative中动画之前,我们还是看看网页动画基本实现方式。在Web业务效果方面,基本的做法是改变Html页面元素的属性,例如:width,left,top等,导致页面重绘,由于元素属性变化和重绘过程存在时差,也就产生了动画的效果,但总的来说性能并不太好。在Css3中增加了transformtransition使得Web元素动画效果变的简单、流畅,再加上Htmlcanvas元素对视频的支持,大大降低了Web页面对插件式动画的依赖。在ReactNative的动画主要关注在Web元素的效果变化,视频的支持依然交给了canvas(weixin号:React实战)

1.ReactNative中的四种变化方式

ReactNative中实现动画效果的基本原理与之前并没有什么区别,再结合ReactJSUI重绘原则,主要有以下方式:

a通过Js直接构造新的元素,改变Style属性。

if(this.state.complete === true){

        return <View style={ {width:20,height:20,backgroundColor:'red'}} />

      }else{

         return <View style={ {width:20,height:20,backgroundColor:'blue'}} />

      }

b依据不同条件,设置不同的Style

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值