ReactNative圆形进度条 ART Path arcTo 圆弧实现

重点实现进度的核心就两个

  • 一个是根据角度计算终点坐标 sin cos
  • 一个是push方法 用圆弧 将两个点连起来
  • 传入一个radius 我回根据半径计算这个圆的顶点坐标 默认中心最上的点为起始点

效果图

效果图

内容说明

使用方法很简单

               <CircleProgressView progress={this.state.progress}>
                    <View style={{backgroundColor: '#987123', flex: 1,  alignItems: 'center'}}>
                        <Text>外部放入进度条中间的内容</Text>
                    </View>
                </CircleProgressView>

                <AnimatedCircleProgress progress={this.state.progress}>
                    <View style={{backgroundColor: '#987123', flex: 1,  alignItems: 'center',justifyContent:'center'}}>

                        <AMAText value={this.state.progress}/>

                    </View>
                </AnimatedCircleProgress>

一个无动画 一个有动画

  • 复杂配置 很多的配置

因为进度条是一个单独的组件 所以中间部分 我没有写死 中间区域留了一个位置 可以插入你想插入的View

效果图中间的数字动画使用Animated.createAnimatedComponent实现

  • 中间留空的区域 是根据传入的半径 获取到了圆的区域 在计算中间内切正方形的区域 在通过绝对布局left top实现 具体可以看代码

代码就不贴了 github有 如果对RN的ART arcTo 圆弧 不太熟悉的 可以看看Demo 希望有帮助

详细解说介绍地址--->(learn more)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值