【iOS开发】k线图绘制

由于项目需要用到k线图,但是在网上搜索了很多都不太理想,大概看了一下,理了一下思路决定自己写。
k线图简单来说有几点:
1.画线(背景线,x轴,y轴)
2.主要内容(k线,分时图折线)
3.手势(左右滑动手势,放大缩小,长按显示十字线)
这些都是使用最简单的画图写出来的,并没有那么多高深的东西。
一、计算坐标,长按手势UILongPressGestureRecognizer

【iOS开发】k线图绘制_第1张图片
效果图

二、添加了左右滑动手势
使用以下触摸方法来控制位移
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
首先要计算出手指移动的距离方向,根据距离来确定移动了多少个元素,使用代理方法MIKLineViewDelegate在vc里进行数据的操作

【iOS开发】k线图绘制_第2张图片
Untitled.gif

三、这次增加了捏合手势UIPinchGestureRecognizer,捏合手势首先需要注意两指的第一个手指是左边还是右边

 UIPinchGestureRecognizer * ges = (UIPinchGestureRecognizer*)pGesture;
NSUInteger touchCount = ges.numberOfTouches;
//第一个手指坐标
CGPoint currentOnePoint = [pGesture locationOfTouch: 0 inView:pointView ];
//第二个手指坐标
CGPoint currentTwoPoint = [pGesture locationOfTouch: 1 inView:pointView ];

【iOS开发】k线图绘制_第3张图片
左右手指

【iOS开发】k线图绘制_第4张图片
效果图

git地址: https://github.com/LUShanshan633/MIKLine.git
emmm。demo丢了

【iOS开发】k线图绘制_第5张图片
谢谢观看

你可能感兴趣的:(【iOS开发】k线图绘制)