iOS 绘制股票K线图

  • //联系人:石虎  QQ: 1224614774昵称:嗡嘛呢叭咪哄

    一、k线图概念

         k线图:有最新价、收盘价、开盘价、最高价、最低价、均价、卖量、买量等等。而我们需要展示给用户看的第一眼就是把它们全部绘制为k线图,直观。还有部分要转化为数值直接推动;

         蜡烛需要用到收盘价、开盘价、最高价、最低价;红色是涨(国内),开盘价在上,收盘价在下;绿色是相反的;

    效果图:

    iOS 绘制股票K线图

  • 二、CAShapeLaye优点

    1. 采用 CAShapeLayer + UIBezierPath绘制,绘制效率高,占用内存低
    1. 底层视图是UIScrollView,ScrollView上面添加一个View,所有的绘制在这个View上完成。体验流畅丝滑,FPS平均在55帧以上
    2. 指标支持MACD WR KDJ,指标计算采用TALib,方便扩展
    3. 横竖屏切换
    4. 右拉加载更多数据

三、CAShapeLayer思路

  1. 所有的绘制在UIView上面,UIView底层是一个ScrollView
  2. 设置K线之间的间距与可视区域想要显示的K线个数,动态计算出K线的宽度。之所以没有直接设置K线宽度,是为了保证每次滑动的时候,屏幕内总是占满整数倍的K线个数。
  3. 通过k线的个数,计算出当前View的与它的父视图ScrollView的宽度
  4. KVO监听ScrollView的contentOffset属性,计算每次滑动将要显示的K线数组(currentDisplayArray)
  5. 计算currentDisplayArray的最大值与最小值,然后得出每一根K线对应屏幕的坐标,绘图

谢谢!!!

来源:@虎哥132

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2017年8月2日
下一篇 2017年8月2日

相关推荐