zoukankan      html  css  js  c++  java
  • 关于iOS开发中Quartz2D的初步学习

         由于最近的新项目可能要涉及到画表格和画统计图,应该会涉及到iOS开发的一个知识点,那就是Quartz2D这个技术,对于一个正经从事iOS半年的我,这个技术还是涉足的较晚,懂得也是较少的,话不多说,初学Quartz2D,写一下刚刚掌握的基础

    首先,利用Quartz2D需要在View的 - (void)drawRect:(CGRect)rect 函数中来写,即绘制函数。

    有了这个   

        - (void)drawRect:(CGRect)rect

    {

        //1.必须有的就是一张虚拟的画布,所有需要绘制的东西都需要花在这个上面,通常称其为上下文环境

        CGContextRef ctx = UIGraphicsGetCurrentContext();

        

        //在这个ctx的上下文环境中画一个点 (0,0) 

        CGContextMoveToPoint(ctx, 0, 0);

        //以这个点为起点,向 (30,100)这个方向上去绘制一条线    

        CGContextAddLineToPoint(ctx, 30 , 100);

       

    //同理继续从上面那个点向(100,40)绘制一条线,并且收录在上下文环境ctx上。

        

        CGContextAddLineToPoint(ctx, 100, 40);

    //设置线的属性,这个事说拐点是圆的还是角的

        CGContextSetLineJoin(ctx, kCGLineJoinRound);

    //设置线的头和尾的点属性,源头还是方头的

        CGContextSetLineCap(ctx, kCGLineCapRound);

    //设置线的宽度

        CGContextSetLineWidth(ctx, 20);

        //最后在把这个ctx里面的图形上下文绘制出来,绘制的方法是轮廓线。

        CGContextStrokePath(ctx);

        

    }

    小总结:初次尝试,明白了,Quartz2D的思路,分为三步

    1.创建上下文环境

    2.把想要绘制的东西绘制到上下文环境中;

    3.最终把上下文环境选择一种绘制方式,绘制到视图View上

    就是这几个步骤,剩下的就是记住第二个步骤里面的,绘制函数,多用,多记,就行了,嘿嘿,感觉自己已经入门了,接下来还会继续深入的学习这项技术的。

  • 相关阅读:
    常用算法之选择排序
    常用算法之插入排序
    常用算法之冒泡排序
    Python hashlib模块 (主要记录md5加密)
    Django Model
    CSS实现table td中文字的省略与显示
    JS读取文件,Javascript之文件操作 (IE)
    ie6789和其他浏览器之间的鼠标左、中、右键的event.button不一致的办法
    兼容和样式
    kindeditor的docs
  • 原文地址:https://www.cnblogs.com/YaoWang/p/5045800.html
Copyright © 2011-2022 走看看