里程碑组件

在这里插入图片描述
在这里插入图片描述

功能拆解1:页面内展示多个可滑动的里程碑分为多种情况2个/3个/4个/10个进度气泡,屏幕内最多展示4个超出4个滑动效果,4个以内等分效果
气泡和气泡的间距=(获取屏幕宽度 - (数据的length(大于4=4)*一个气泡固定宽度-padding*2))/数据的length-1
每个气泡的marginRight = 气泡和气泡的间距

功能拆解2:画一条常规的进度条,进度条内遍历小圆点,小圆点的位置计算和上面气泡的是一样的,小圆点父级宽度=气泡宽度,然后设置小圆点居中

功能拆解3:下面文案居中对齐,因为有的文案超出长度了为了方便计算
文字盒子宽度 = 如果是第一个盒子?一个气泡的宽度+气泡和气泡的间距/2:气泡的宽度+气泡和气泡的间距(点和点的中心位置)
设置里面的文案内容居中对齐

功能拆解4:进度计算
完成率 = (当前进度 - 上一阶梯进度)/(下一阶梯进度 - 上一阶梯进度)
如果是第一段进度 = (气泡宽度/2)*完成率
如果非第一段进度 = (气泡宽度/2 )+ (气泡宽度+气泡和气泡的间距)*(当前进度的索引-1)+(气泡宽度+气泡和气泡的间距)* 完成率
如果进度完成了,宽度设置100%

功能拆解5:进度如果差一点点到达目标值但是视觉上看不出来
判断如果快到目标了距离<4那么宽度-4,4是随意给的值,根据视觉效果来
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值