欢迎光临
我们一直在努力

iOS股票K线图绘制

建站超值云服务器,限时71元/月

iOS股票K线图绘制

项目介绍:

最近一段时间写了一个iOS的K线图。写这个纯属个人兴趣,之前没有做过股票相关的上线项目,正好提高一下自己绘图方面的能力。在写的时候,参考了Cocoa-Charts 的实现思路。 废话不多说,先上图:



特点:

  • 采用 CAShapeLayer + UIBezierPath绘制,绘制效率高,占用内存低

  • 底层视图是UIScrollView,ScrollView上面添加一个View,所有的绘制在这个View上完成。体验流畅丝滑,FPS平均在55帧以上

  • 指标支持MACD WR KDJ,指标计算采用TALib,方便扩展

  • 横竖屏切换

  • 右拉加载更多数据

代理方法

-(void)displayScreenleftPostion:(CGFloat)leftPostion startIndex:(NSInteger)index count:(NSInteger)count;
-(void)kLineMainViewLongPressKLinePositionModel:(NSInteger)kLineModeIndex kLineModel:(ZYWCandleModel *)kLineModel;
-(void)displayLastModel:(ZYWCandleModel *)kLineModel;
-(void)displayMoreData;

绘图基本思路

  1. 所有的绘制在UIView上面,UIView底层是一个ScrollView

  2. 设置K线之间的间距与可视区域想要显示的K线个数,动态计算出K线的宽度。之所以没有直接设置K线宽度,是为了保证每次滑动的时候,屏幕内总是占满整数倍的K线个数。

  3. 通过k线的个数,计算出当前View的与它的父视图ScrollView的宽度

  4. KVO监听ScrollView的contentOffset属性,计算每次滑动将要显示的K线数组(currentDisplayArray)

  5. 计算currentDisplayArray的最大值与最小值,然后得出每一根K线对应屏幕的坐标,绘图

链接

[ZYWStock]https://github.com/zyw113/ZYWStock.git

  • 在使用过程中如果遇到什么问题,欢迎给我留言,或者直接Pull request,欢迎star or fork。

  • 更多功能,敬请期待~~~

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » iOS股票K线图绘制
分享到: 更多 (0)