撸了一套iOS k线,与君共勉

博客好久没更新,今天心血来潮,把最近撸的一套k线分享出来,除了缩放有些抖动外,其他操作都非常流畅,如果用得着不妨试试。


k线效果
demo界面

demo下载地址 有什么问题,可以在下面留言

功能需求

  • 蜡烛图,指标图
  • 双击横屏切换
  • 界面缩放
  • 长按显示十字线,查看指标

实现思路

  • UIScrollView 作为最底层容器,保证滑动的流畅性
  • 使用 贝塞尔曲线CAShapeLayer 撸k线
  • 使用TALib框架计算ma,kdj,macd等这些指标
  • 只绘制屏宽的k线,确保k线显示的比例和减少性能损耗
  • 监听UIScrollView的滚动,滑动超过一个蜡烛图宽是,更新k线界面

类结构图

类结构图

代码细节

* k线只需获取:高、开、低、收、量五个数据,其他数据均由TALib框架,在本地计算

  • k线类,均遵循 Cocoa_ChartProtocol协议
  • 代码实现逻辑,基本均遵循此思路
    //外部调用
    - (void)refreshChartView;
    
    // 蜡烛图为核心界面,所有界面,均由它带动
    
    /** 计算屏幕可显示蜡烛图个数 */ 
    [self initCurrentDisplayModels];
    
     /** 计算当前最大值,最小值 */ 
     [self calcuteMaxAndMinValue];
     
     /** 绘制k线 */
     [self drawCandleSublayers];
     
     /** 绘制均线 */
     [self drawMaSublayers];
    

代码的具体实现看上面demo,现在线上两个APP在用它,项目中的一些改动可能没有更新到demo中,有问题朋友可以在下面留言哦!!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,056评论 3 119
  • 1 CALayer IOS SDK详解之CALayer(一) http://doc.okbase.net/Hell...
    Kevin_Junbaozi阅读 10,620评论 3 23
  • 上午同事还过来问我:“企培师考试通过了吗?”下午就接到培训班老师的通知,说可以查成绩了。我的心那个忐忑呀! ...
    霜凝西窗烛阅读 3,283评论 0 0
  • 今天在德州的一个湿地公园玩了一天,下午4点回超冉家,洗完澡,晚上饭也没怎么吃,困极了就睡着了,7点走的时候还在睡觉...
    海滨阅读 1,540评论 0 1
  • 孤独是一枚月亮是月亮里的我望着另一枚月亮 孤独是月亮上不死的桂树梦见的吴刚就是那另一枚月亮上的我 以及其他的孤独影...
    侯爷阅读 1,148评论 0 0

友情链接更多精彩内容