zoukankan      html  css  js  c++  java
  • iOS 甘特图的实现

      完成之后的界面基本上就是这样 !

    首先先说说主要的功能吧 

    1.首先个界面看起来就像是倒着的图表,有X,Y轴,并且有标签来表示坐标轴所代表的含义

    2.可通过缩放手势对视图进行缩放,在缩放的过程中 X轴的刻度会发生变化,共有三种类型的展示,分别是 日,周,月。也可点击按钮来改变视图的类型。

    3.通过每个任务的起始和结束的时间来绘制绿色的矩形,并且绘制箭头和折线,将视图连接。

    对于这样的功能描述 我们也可以推断出大概可以抽象出来的几个类

    1.就是承载 甘特图的可以滑动的一个 UIScrollView的子类

    2.就是绿色的表示任务进度的 视图 Cell

    3.绘制 X , Y 轴的以及承载 进度视图的 视图 ganttView

    4.X轴的标签视图 Xlabel

    基本上就是这个思路 

       cell 中有一个绿色的子视图,然后使用drawRect绘制一个小的三角形在绿色视图的左边 

       cell会有三个点的属性  分别记录的是链接两个cell的折线的转折点;

      甘特图有三种类型 

      分别是以 日 周 月来显示

    所以需要设置一个枚举值,当是视图的缩放比改变时 就修改甘特图的类型然后 重新加载数据源 重新布局视图  

    ok  这就是甘特图的实现  

        

  • 相关阅读:
    「2019冬令营提高组」原样输出
    FJWC2019
    P2763 试题库问题
    P3979 遥远的国度
    P2754 [CTSC1999]家园
    P1251 餐巾计划问题
    P1382 楼房
    P1384 幸运数与排列
    P4294 [WC2008]游览计划
    P3345 [ZJOI2015]幻想乡战略游戏
  • 原文地址:https://www.cnblogs.com/Seeulater/p/3965763.html
Copyright © 2011-2022 走看看