razerdp/AnimatedPieView

当pieInfo值差异过大时候没有成功显示

Closed this issue · 2 comments

该问题是怎么引起的?

由于添加的数据差异过大,导致有些比例不是很大的部分无法显示出来

重现步骤

比如插入了四条数据,在华为荣耀4X 上第二条数据显示的是白色。具体插入的数据

    .addData(new SimplePieInfo(0, getColor("FF446767")), true)
                    .addData(new SimplePieInfo(50f, getColor("ff2bbc80")), true)
                    .addData(new SimplePieInfo(1641f, getColor("FFbb76b4")), true)
                    .addData(new SimplePieInfo(109f, getColor("FFFFD28C"),"长文字test"), false)






@JaysDev

收到-V-

经过测试,确实会存在这种情况,debug发现,是绘制过的缓存的pieinfo不全,应该是这里我的方法有点问题。。。对应pieview#L632
代码L632行

我会尽快修复的-V-

另外根据描述,也会出现很小的数据角度过小的问题,比如1,1000,10000,那么1这个数值占的角度很小,这个问题也会去尝试修复的,谢谢您的反馈

再次debug,也发现了一个问题

动画的角度计算跨度大了(跟插值器有关),所以导致你的问题出现

TIM2017113010540077d8e4a1b65ee40a.png