ReactNative实现宽度变化实现的动画效果

效果如上图所示,通过修改设备宽度实现动画效果

import React, {useRef, useEffect, useState} from 'react';
import {Animated, Text, View, Image} from 'react-native';

const FadeInView = props => {
  const fadeAnim = useRef(new Animated.Value(0)).current;

  React.useEffect(() => {
    Animated.timing(
      fadeAnim, // 动画中的变量值
      {
        toValue: props.currentWidth, // 
        duration: props.durationTime, // 让动画持续一段时间
        //  Style property 'width' is not supported by native animated module
        useNativeDriver: false,
      },
    ).start(); // 开始执行动画
  }, [props.currentWidth]);

  return (
    <Animated.View // 使用专门的可动画化的View组件
      style={
  {
        ...props.style,
        width: fadeAnim, // 将宽度绑定到动画变量值
      }}>
   
    </Animated.View>
  );
};

// 然后你就可以在组件中像使用`View`那样去使用`FadeInView`了
export default props => {
  return (
    <FadeInView
      durationTime={props.durationTime}
      currentWidth={props.currentWidth}
      style={
  {height: 310, backgroundColor: 'pink'}}></FadeInView>
  );
};

使用的代码如下

<LayoutAnimatedWidth
      currentWidth={this.state.currentWidth}
      durationTime={this.state.durationTime}>
</LayoutAnimatedWidth>

PS:注意上面的代码和截图不一致;但是代码是可以实现上面的效果的。

相关推荐

  1. Vue 实现精彩动画效果

    2024-02-05 11:20:02       7 阅读
  2. css动画旋转效果实现

    2024-02-05 11:20:02       37 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-05 11:20:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-05 11:20:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-05 11:20:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-05 11:20:02       20 阅读

热门阅读

  1. PHP三级分类数据处理

    2024-02-05 11:20:02       29 阅读
  2. Symbol.toStringTag用法

    2024-02-05 11:20:02       27 阅读
  3. asp.net+h5网页调用摄像头实现拍照功能

    2024-02-05 11:20:02       27 阅读
  4. 算法每日一题: Nim游戏 | 找规律

    2024-02-05 11:20:02       38 阅读
  5. Exploring Sequelize Schema and Model Usage

    2024-02-05 11:20:02       23 阅读
  6. 疑惑问题总结

    2024-02-05 11:20:02       35 阅读
  7. 支付交易——支付原理

    2024-02-05 11:20:02       30 阅读
  8. Xor 特殊情况_题解

    2024-02-05 11:20:02       28 阅读
  9. MySQL数据存储

    2024-02-05 11:20:02       36 阅读
  10. 什么是API

    2024-02-05 11:20:02       27 阅读