1. x轴部分展示,可滑动
setVisibleXRange(4.5f, 4.5f)
2. 在1的基础上,每次加载新数据自动滚动到最后
moveViewToX(LineData.xMax)
// 动画平移(需平移到的X坐标值,需平移到的Y坐标值,需平移的坐标轴,动画时长)
// 第一个参数的效果是尽可能将所设置值拉到X轴圆点
// 第二个参数的效果是尽可能将所设置值拉到Y轴中心
moveViewToAnimated(it.xMax,0f,YAxis.AxisDependency.LEFT,500)
另外有个bug,如果开启了线性滚动
isDragDecelerationEnabled = true
图表在滑动时会启用Fling
效果,也就是手指抬起后列表会跟随惯性按照原方向继续滚动一会,而在滚动还未停止时,调用moveViewToX
或moveViewToAnimated
方法会无效。
感谢t2314862168老师的ISSUE
加上这行代码就行了
(mChartTouchListener as BarLineChartTouchListener).stopDeceleration()
其实
CoordinatorLayout
中的AppbarLayout
的视差效果在Fling
时也有这个BUG,需要通过反射解决,不知道现在官方解决没有。
3. 设置图标区域距离X、Y轴的边距
参考地址是这个
// 左右边距《==》单位对应x轴value
it.spaceMin = 0.2f
it.spaceMax = 0.2f
// Y轴偏移
axisLeft.spaceBottom = 6f
Y轴点会偏移坐标轴的相应百分比距离开始绘制
但是如果设置了填充,填充不会偏移,类似效果就是
image.png
网友评论