Android技术日记---K线图
1.缘由:最近被大哥推荐去一家金融公司面试,接触到了K线图这个鬼,原谅我这个技术老白没有做过,回家夜不能寐。先把金融知识来了一次头脑风暴,开始有了思路,然后,热喷喷的代码奉上。
2.首先呢,思路:确定用canvas自绘,股票周一到周五开盘,分析K线图,是一个一个点用线连起来,4个小时,240分钟,一分钟一个时间节点,然后每个时间节点用4个像素点的颜射线连起来,
K线图就是这个样子画出来啦。然后呢,还有一个经线,一个纬线,当接触屏幕时就显示出来,并显示这个时间节点的具体信息。听着是不是很简单?
哈哈,那你就错了,坑还是很多的。最大的坑我认为是这个数据处理的部分,大坑啊!希望见者小心。
3.代码。
// 自定义View分为两个部分,BaseView定义画线的部分,包括画笔,画布,颜射,线框等
public class BaseView extends View {
//定义各种样式的默认值,视个人口味酌量添加。
private static final int DEFAULT_AXIS_COLOR = Color.BLACK;
public static final int DEFAULT_UPER_LATITUDE_NUM = 3;
private static final int DEFAULT_LOWER_LATITUDE_NUM = 1;
...........(具体看DEMO)
//这是主菜啊,在这里绘制边框,经纬线等,具体看DEMO吧,小弟实在写不下了。
@Override
protect
1.缘由:最近被大哥推荐去一家金融公司面试,接触到了K线图这个鬼,原谅我这个技术老白没有做过,回家夜不能寐。先把金融知识来了一次头脑风暴,开始有了思路,然后,热喷喷的代码奉上。
2.首先呢,思路:确定用canvas自绘,股票周一到周五开盘,分析K线图,是一个一个点用线连起来,4个小时,240分钟,一分钟一个时间节点,然后每个时间节点用4个像素点的颜射线连起来,
K线图就是这个样子画出来啦。然后呢,还有一个经线,一个纬线,当接触屏幕时就显示出来,并显示这个时间节点的具体信息。听着是不是很简单?
哈哈,那你就错了,坑还是很多的。最大的坑我认为是这个数据处理的部分,大坑啊!希望见者小心。
3.代码。
// 自定义View分为两个部分,BaseView定义画线的部分,包括画笔,画布,颜射,线框等
public class BaseView extends View {
//定义各种样式的默认值,视个人口味酌量添加。
private static final int DEFAULT_AXIS_COLOR = Color.BLACK;
public static final int DEFAULT_UPER_LATITUDE_NUM = 3;
private static final int DEFAULT_LOWER_LATITUDE_NUM = 1;
...........(具体看DEMO)
//这是主菜啊,在这里绘制边框,经纬线等,具体看DEMO吧,小弟实在写不下了。
@Override
protect